Как применить стиль ко всем дочерним элементам, которые основаны на определенном настраиваемом элементе управления. CustomControlПрименить стиль к элементам управления, которые производятся от определенного базового класса
public class SubView : UserControl
{ ... }
Контрольную
Пример
базирующийся на CustomControl
public partial class MyView : SubView
{ ... }
XAML для MyView
<myLibrary:SubView
xmlns:myLibrary="....">
<Grid>
<!--Any content-->
</Grid>
</moduleChrome:SubView>
Родитель (дети этой сетки устанавливается из кода во время выполнения)
<Grid>
<Grid.Resources>
<Style TargetType="myLibrary:SubView">
<Setter Property="MyCustomDependancy" Value="{binding to a shared MyCustomDependancy}"/>
</Style>
</Grid.Resources>
<myLibrary:SubView/> <!--This will have the shared MyCustomDependancy-->
<localFolder:MyView/> <!--But this will not be affected-->
</Grid>
Как бы сделать, чтобы позволить MyView зависеть от стиля?
EDIT
Происхождение этого кода является динамичным и довольно сложным, но я пытался сделать вопрос, как родовой, как можно так, как многие люди, насколько это возможно мог бы помочь возможным решением, но я думаю, Я сделал это слишком общим. Мне, вероятно, не помогут эти ответы, но я надеюсь, что кто-то еще это сделает.
Какой ответ вы ищете тогда? Почему dont't создать реальный пользовательский элемент управления, если это то, что вы хотите? – mm8
@ mm8 Это «реальный» пользовательский элемент управления. SubView - это замена пользовательских элементов управления внутри другого настраиваемого элемента управления под названием «Вид», а те, которые находятся в «главном» элементе управления, называются «ViewHost».И «Views», и «SubViews» имеют класс зависимостей, называемый ViewGate (который позволяет общаться между представлениями и основным приложением). Что я хотел сделать, это связать ViewGate «View» с его дочерними (SubViews) ViewGates поскольку у ViewGate есть динамические свойства – HGBRD
Итак, как это связано с вашим первоначальным вопросом о том, как применяется стиль базового класса? – mm8