代码之家  ›  专栏  ›  技术社区  ›  David Veeneman

自定义控件模板的TargetTypes?

  •  1
  • David Veeneman  · 技术社区  · 14 年前

    我正在扩展WPF Calendar控件,并已将Calendar、CalendarItem、CalendarButton和CalendarDayButton的控件模板复制到 Generic.xaml 我的自定义控件。日历控件模板的TargetType是我的自定义控件FsCalendar:

    <!-- Calendar Control Template -->
    <Style TargetType="{x:Type local:FsCalendar}">
    ...
    </Style>
    

    但是其他的控制模板呢?我是不是把目标放在原来的日历上,像这样?

    <!-- CalendarDayButton Control Template -->
    <Style TargetType="CalendarDayButton">
    ...
    </Style>
    

    还是将其定向到自定义控件?如果是,我该怎么做?

    我试着把我的名字空间( local System.Windows.Controls.Primitives 命名空间。

    谢谢你的帮助。

    1 回复  |  直到 14 年前
        1
  •  2
  •   John Bowen    14 年前

    如果您想在FsCalendar中使用它们时更改它们的模板,您可以为每个模板添加x:Key,然后在FsCalendar模板中的每个用法上添加StaticResource引用(如果它们是嵌套的或自动生成的实例,则可能不实用),或者只使用TargetType隐式键入并移动它们在样式或控件模板的资源中,这样每当加载样式时,它们都会得到支持。