你好,我有一个绑定和DataTrigger的问题。所以我的代码是:Wpf绑定+ DataTrigger
<tog:HorizontalToggleSwitch Margin="0,10,15,0" HorizontalAlignment="Left" >
<tog:HorizontalToggleSwitch.Style>
<Style TargetType="{x:Type tog:HorizontalToggleSwitch}">
<Setter Property="IsChecked" Value="{Binding Staff.isSelfie, Mode=TwoWay}"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=Admin,Path=IsChecked}" Value="True">
<Setter Property="IsChecked" Value="True" />
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=Admin,Path=IsChecked}" Value="False">
<Setter Property="IsChecked" Value="False" />
<Setter Property="IsEnabled" Value="True"/>
</DataTrigger>
</Style.Triggers>
</Style>
</tog:HorizontalToggleSwitch.Style>
</tog:HorizontalToggleSwitch>
正如你可以看到我在物业器isChecked有约束力的价值Staff.isSelfie
和我改变它Datatrigger内。我的问题是我没有在变量Staff.isSelfie
上得到IsChecked的bool值。 DataTrigger的工作原理是,当我点击一个单选按钮的Admin Element时,开关从关闭变为开启。从Staff.isSelfie
的代码是:
bool _isSelfie;
[DataMember]
public bool isSelfie
{
get
{
return _isSelfie;
}
set
{
if (_isSelfie != value)
{
_isSelfie = value;
OnPropertyChanged(nameof(isSelfie));
}
}
}
其执行INotifyPropertyChanged。变量Staff.isSelfie
从我的数据库中的布尔值来看他的价值,这就是为什么我想在开始时设置它。我怎样才能从DataTrigger的值真或假我的变量Staff.isSelfie
?哪里不对?非常感谢。