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:相同的模板,不同的绑定的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 XAML 中绑定 MainWindow 数据上下文与使用 this.datacontext=this 在代码隐藏中绑定的行为不同?

如何使用 ViewPager 显示相同的片段,但每次加载不同的数据?

如何在C#后面的代码中动态创建数据模板并绑定树视图层次结构数据

WPF教程十五:数据模板的使用(重发)

如何将标签绑定到WPF中相同窗口类中找到的字段?

为啥在数据模板中使用 xaml UserControl 时无法绑定到依赖属性? [复制]