Wpf 自定义控件模板的TargetTypes?
我正在扩展WPF Calendar控件,并已将Calendar、CalendarItem、CalendarButton和CalendarDayButton的控件模板复制到自定义控件的Wpf 自定义控件模板的TargetTypes?,wpf,custom-controls,Wpf,Custom Controls,我正在扩展WPF Calendar控件,并已将Calendar、CalendarItem、CalendarButton和CalendarDayButton的控件模板复制到自定义控件的Generic.xaml。日历控件模板的TargetType是我的自定义控件FsCalendar: <!-- Calendar Control Template --> <Style TargetType="{x:Type local:FsCalendar}"> ... </Style&
Generic.xaml
。日历控件模板的TargetType是我的自定义控件FsCalendar:
<!-- Calendar Control Template -->
<Style TargetType="{x:Type local:FsCalendar}">
...
</Style>
...
但是其他控件模板呢?我是不是把它们放在原来的日历上,像这样
<!-- CalendarDayButton Control Template -->
<Style TargetType="CalendarDayButton">
...
</Style>
...
还是将其定向到自定义控件?如果是的话,我会怎么做
我尝试将我的名称空间(local
)放入声明中,但没有成功。因此,目前,TargetType被设置为默认的System.Windows.Controls.Primitives
名称空间
感谢您的帮助。如果您仍在使用原始对象中的相同对象,即尚未创建新的FsCalendarDayButton,则只需与复制的原始TargetTypes完全相同即可 如果要在FsCalendar中使用它们时更改它们的模板,可以为每个模板添加x:Key,然后在每次使用时添加StaticResource引用(如果它们是嵌套的或自动生成的实例,则可能不实用)在您的FsCalendar模板中,或者将它们保留为仅使用TargetType隐式键入,并将它们移动到您的样式或ControlTemplate的资源中,以便在加载该样式时,它们都能得到支持 如果您不修改这些控件,那么您根本不需要它们样式的副本-当您使用这些控件时,默认值将被选中,就像按钮或组合框一样