我有一個文本框,如果文本框有Text.Length >0
那麼我必須改變HasChar屬性True
,否則False
。在這裏,我無法綁定Setter中的屬性。如何根據條件將屬性從VIew模型綁定到DataTrigger設置器?
的XAML源代碼:
<TextBox Text="WPF">
<TextBox.Style>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Value="0"
Binding="{Binding Text.Length, RelativeSource={RelativeSource Self}}">
<Setter Property="{Binding HasChar}" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
視圖模型C#源代碼:
private bool _hasChar= true;
public bool HasChar
{
get { return _hasChar; }
set
{
_hasChar= value;
OnPropertyChanged();
}
}
數據觸發器可以在數據源到目標(可視元素)的情況下工作,而您正試圖將其反轉。 「TextBox.Text」是否綁定到相同視圖模型的某些屬性? – Dennis
不,我沒有將任何屬性綁定到TextBox.Text。我需要綁定Setter中的屬性。請在這方面幫助我。 –