2012-04-13 58 views
0

我有這個引發異常的XAML代碼(它只是說它扔了它,沒有名字)。這個WPF觸發器有什麼問題

我搜索了一下,發現http://social.msdn.microsoft.com/Forums/en/wpf/thread/cfb159dc-d58e-41c2-81b5-c52e1272c0ce。其中說,對使用過的屬性所做的任何更改都會引發異常。

那麼不可能在<Control.Style>中設置觸發器?

我敢肯定這是一個很小的錯誤,因爲我正在學習這項技術。

XAML代碼

<Window x:Class="Triggers.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="350" Width="525"> 
<Grid> 
    <Button> 
     <Button.Style> 
      <Style TargetType="Button"> 
       <Style.Triggers> 
        <Trigger Property="IsMouseOver" > 
         <Setter Property="Opacity" Value="0.7" /> 
        </Trigger> 
       </Style.Triggers>      
      </Style> 
     </Button.Style> 
     Meow 
    </Button> 
</Grid> 

回答

2

那是因爲你還沒有告訴觸發應該有什麼樣的價值的屬性IsMouseOver?

試試這個:

<Trigger Property="IsMouseOver" Value="True"> 

需要記住的是 「IsMouseOver」 是一個屬性,而不是一個事件。所以它可以是真或假,你需要告訴WPF你的觸發器適用於哪種狀態。

+0

所以真正的哈哈。那麼,你確定有好眼睛。做得好。 – Xavier 2012-04-13 17:18:59