自定义ItemsControl模板:项属性绑定

时间:2013-08-25 22:10:41

标签: c# wpf controltemplate itemscontrol


我正在尝试创建自定义ItemsControl,它显示按钮列表(为了练习),非常简单,如下所示:

<Style TargetType="{x:Type local:MyControl}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type local:MyControl}">
                <Border Background="{TemplateBinding Background}"
                    BorderBrush="{TemplateBinding BorderBrush}"
                    BorderThickness="{TemplateBinding BorderThickness}">
                    <ItemsPresenter />
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>

    <Setter Property="ItemsPanel">
        <Setter.Value>
            <ItemsPanelTemplate>
                <StackPanel />
            </ItemsPanelTemplate>
        </Setter.Value>
    </Setter>


    <Setter Property="ItemTemplate">
        <Setter.Value>
            <DataTemplate>
                <Button Content="{Binding }" />
            </DataTemplate>
        </Setter.Value>
    </Setter>
</Style>

我希望将其设置为动态,因为我可以将对象列表绑定到ItemsSource,并将这些对象的指定属性显示为要在按钮中显示的文本。与DisplayMemberPathComboBox中的工作方式类似(指定要显示的字符串属性时),但我已经读过您不能同时使用ItemTemplateDisplayMemberPath ?那么我怎么能在我的情况下实现类似的属性。

0 个答案:

没有答案