-1
我想用「」使用觸發器替換文本「0」。但是得到下面的編譯錯誤。'文本'屬性不能從屬性觸發器中設置,並同時出現在觸發器的條件中
'文本'屬性不能從屬性觸發器中設置,並同時出現在觸發器的條件中。
<TextBox MaxLength="10">
<TextBox.Style TargetType="{x:Type TextBox}" x:Key="d1">
<Style.Triggers>
<Trigger Property="Text" Value="0">
<Setter Property="Text" Value="" />
</Trigger>
</Style.Triggers>
</TextBox.Style>
</TextBox>
這個錯誤信息對我來說似乎很清楚,而且是合理的。 WPF不希望你引發一個無限循環,在這種情況下會發生什麼。一旦觸發器不再適用(因爲setter更改了值),WPF將恢復到綁定值(假設有一個觸發器),這會再次觸發觸發器,這將導致觸發器不再適用,等等。您的問題中沒有足夠的背景知道更廣泛的目標是什麼,但顯然您只是在考慮錯誤的問題。解決這個問題,確保包含一個好的[mcve]並更好地解釋。 –