C# 数据触发器不';不行?
我有个问题。我想在没有活动选项卡的地方隐藏TabControl。关于选项卡的信息保存在WidoczNosTabControl属性中(如果有任何选项卡WidoczNosTabControl=1,如果没有选项卡WidoczNosTabControl=0)。我尝试过使用DataTrigger,但它不起作用,我也不知道为什么。我是初学者,还在学习。这就是我请求你帮助的原因。这是MainWindowResources.xaml文件的一部分C# 数据触发器不';不行?,c#,wpf,mvvm,datatrigger,C#,Wpf,Mvvm,Datatrigger,我有个问题。我想在没有活动选项卡的地方隐藏TabControl。关于选项卡的信息保存在WidoczNosTabControl属性中(如果有任何选项卡WidoczNosTabControl=1,如果没有选项卡WidoczNosTabControl=0)。我尝试过使用DataTrigger,但它不起作用,我也不知道为什么。我是初学者,还在学习。这就是我请求你帮助的原因。这是MainWindowResources.xaml文件的一部分 <DataTemplate x:Key="Workspace
<DataTemplate x:Key="WorkspacesTemplate">
<TabControl
x:Name="Tabs"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding}"
ItemTemplate="{StaticResource ClosableTabItemTemplate}"
Margin="4"
/>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=WidocznoscTabControl}" Value="0">
<Setter TargetName="Tabs" Property="Opacity" Value="0"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
WidoczNostabControl在MainWindowViewModel.cs文件中声明和初始化。我的第一个猜测是,您没有将ViewModel中的更改通知视图。确保在WidoczNostabControl设置为零时调用OnPropertyChanged
另一个原因可能是将“不透明度”设置为零不会产生所需的效果。您应该尝试将属性Visibly设置为false。可以找到有关如何执行此操作的信息。需要更多信息:WidoczNostTableControl的类型是什么?WidoczNostTableControl的类型是int。但是,我尝试使用bool而不是int,但它也不起作用。您是否设置了DataContext?在调试模式下运行应用程序时,是否在输出窗口中看到任何绑定错误?好的,DataContext设置正确。更重要的是,在输出窗口中没有错误。嗯,我已经尝试手动将不透明度设置为0,它确实达到了预期的效果。当然,widocznostabControl的值设置为0。(如果我单击一个按钮,WidoczNostabControl将设置为1,如果我单击另一个按钮,WidoczNostabControl将设置为0。为了确保此属性的值,每次单击后都会显示具有WidoczNostabControl值的MessageBox)。但如果可以,请查看以下属性:public int-widocznosttabcontrol{get{return{u-widocznosttabcontrol;}set{if(value!=\u-widocznosttabcontrol)\u-widocznosttabcontrol=value;OnPropertyChanged(()=>widocznosttabcontrol)好吧,那我真的没有确切的答案。很抱歉