こんにちは私はBindingとDataTriggerに問題があります。だから私のコードは次のとおりです。Wpf Binding + 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のブール値を取得しないということです。ラジオボタンであるAdmin Elementをクリックしている間、スイッチがオフからオンに変わるため、DataTriggerが機能します。 Staff.isSelfie
からコードは:INotifyPropertyChangedのを実装
bool _isSelfie;
[DataMember]
public bool isSelfie
{
get
{
return _isSelfie;
}
set
{
if (_isSelfie != value)
{
_isSelfie = value;
OnPropertyChanged(nameof(isSelfie));
}
}
}
。変数Staff.isSelfie
は私のデータベースのboolから彼の価値を引き継ぎ、なぜ私はそれを最初に設定したいのですか? DataTriggerから変数Staff.isSelfie
にtrueまたはfalseの値を取得するにはどうすればよいですか?なにが問題ですか?どうもありがとう。