Data binding 如何在DataTemplate中绑定两个不同的类属性

Data binding 如何在DataTemplate中绑定两个不同的类属性,data-binding,uwp,binding,datatemplate,winui-3,Data Binding,Uwp,Binding,Datatemplate,Winui 3,我正在尝试绑定DataTemplate中不同类的两个属性 <DataTemplate x:Key="DemoItemTemplate" x:DataType="local:DemoInfo"> <NavigationViewItem Visibility="{Binding Visibility, Mode=TwoWay}" Content="{x:Bind Name}"/> </

我正在尝试绑定DataTemplate中不同类的两个属性

<DataTemplate x:Key="DemoItemTemplate" x:DataType="local:DemoInfo">
   <NavigationViewItem Visibility="{Binding Visibility, Mode=TwoWay}" Content="{x:Bind Name}"/>
</DataTemplate>

好吧,你不能在UWP中使用多重绑定,你可以尝试使用定位器

如何在DataTemplate中绑定两个不同的类属性

如果将可见性与
StaticResource
绑定,请在页面
Resources
中声明ViewModel类,如下所示

视图模型

public class ViewModel
{
    public ViewModel()
    {
        Visibility = false;
    }
    public bool Visibility { get; set; }
}
<Page.Resources>
    <local:ViewModel x:Key="ViewModel" />
</Page.Resources>


<DataTemplate x:DataType="local:Item">
        <TextBlock
            Width="100"
            Height="44"
            Text="{x:Bind Name}"
            Visibility="{Binding Visibility, Source={StaticResource ViewModel}}" />
    </StackPanel>
</DataTemplate>
Xaml

public class ViewModel
{
    public ViewModel()
    {
        Visibility = false;
    }
    public bool Visibility { get; set; }
}
<Page.Resources>
    <local:ViewModel x:Key="ViewModel" />
</Page.Resources>


<DataTemplate x:DataType="local:Item">
        <TextBlock
            Width="100"
            Height="44"
            Text="{x:Bind Name}"
            Visibility="{Binding Visibility, Source={StaticResource ViewModel}}" />
    </StackPanel>
</DataTemplate>

有关更多详细信息,请参阅官方文档。

谢谢,但它在加载应用程序时工作正常,在运行时可见性值动态更改时不工作。我在xaml中将模式设置为双向,将UpdateSourceTracger设置为PropertyChanged,并将RaisePropertyChanged()用于ViewModel类中的可见性属性。您需要为ViewModel实现
INotifyPropertyChanged
接口class@KanniyappanP,我已经更新了案例回复,请检查。