XAML:相同的模板,不同的绑定

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XAML:相同的模板,不同的绑定相关的知识,希望对你有一定的参考价值。

我正在尝试用ListView创建一个GridView,它有两列:Name和Date,后面将绑定到Person Object

我想使用DataTemplate,这个模板由Label组成。

我的问题是我想将这个模板用于两个列,但标签的内容是绑定到每列中的不同属性。简而言之,我希望能够在GridViewColumn代码块中而不是在DataTemplate代码块中绑定标签的内容。

在此先感谢您的帮助。

答案

我尝试了这种方式,在datatemplate中使用空绑定,在我的情况下解决了..(没有检查具有多个属性的对象类型被绑定)。这将适用于此问题的上下文。

<DataTemplate x:Key="commonTemplate">
    <Label Content="{Binding}" />
</DataTemplate>

<GridViewColumn>
    <GridViewColumn.CellTemplate>
        <DataTemplate>
            <ContentPresenter Content="{Binding Name}"
                ContentTemplate="{StaticResource commonTemplate}"/>
        </DataTemplate>
    </GridViewColumn.CellTemplate>
</GridViewColumn>

<GridViewColumn>
    <GridViewColumn.CellTemplate>
        <DataTemplate>
            <ContentPresenter Content="{Binding Date}"
                ContentTemplate="{StaticResource commonTemplate}"/>
        </DataTemplate>
    </GridViewColumn.CellTemplate>
</GridViewColumn>

任何更好的方式或改进总是受欢迎的..谢谢

以上是关于XAML:相同的模板,不同的绑定的主要内容,如果未能解决你的问题,请参考以下文章