2012-10-25 37 views
8
<StackPanel> 
     <TextBox Text="" x:Name="input"/> 
     <Button Content="DataTrigger Before"> 
      <Button.Style> 
       <Style TargetType="Button"> 
        <Style.Triggers> 
         <DataTrigger Binding="{Binding ElementName=input, Path=Text}" Value="1"> 
          <Setter Property="Content" Value="Changed"></Setter> 
         </DataTrigger> 
        </Style.Triggers> 
       </Style> 
      </Button.Style> 
     </Button> 
    </StackPanel> 

風格DataTrigger二傳手在按鈕內容是無效的在按鈕內容風格DataTrigger二傳手無效

感謝

+1

有什麼問題嗎? – VKen

回答

24

DataTrigger,因爲你把它裏面沒有改變Content屬性的值按鈕聲明。所以,一旦設定,它將永遠不會改變。要允許更改,您必須設置款式中的值。

這將工作(我試過):

<StackPanel> 
    <TextBox Name="input"/> 
    <Button> 
     <Button.Style> 
      <Style TargetType="Button"> 
       <Setter Property="Content" Value="DataTrigger Before"></Setter> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding ElementName=input, Path=Text}" Value="1"> 
         <Setter Property="Content" Value="Changed"></Setter> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </Button.Style> 
    </Button> 
</StackPanel> 
+0

謝謝。最終是正確的信息。 – ilmatte