2012-03-06 65 views
0
<Style TargetType="{x:Type dxg:GroupColumnSummaryControl}"> 
          <Style.Triggers> 
          <Trigger Property="IsMouseOver" Value="True"> 
           <Setter Property="Background"> 
            <Setter.Value> 
             <Binding Converter="{StaticResource c}"/> 
            </Setter.Value> 
           </Setter> 
          </Trigger>. 

此代碼有什麼問題在這裏。當我做鼠標移動時,我的轉換器似乎不會啓動。 如果我刪除轉換器並將值分配爲紅色,我可以看到顏色。轉換器似乎沒有在任何時候觸發鼠標

這工作完全正常

<Style TargetType="{x:Type dxg:GroupColumnSummaryControl}"> 
          <Style.Triggers> 
          <Trigger Property="IsMouseOver" Value="True"> 
           <Setter Property="Background" Value="Red"> 
           </Setter> 
          </Trigger> 
+0

後的轉換代碼。描述不發射的情況。 – Paparazzi 2012-03-06 20:52:21

+0

轉換器只是返回solidredcolor畫筆。我在轉換器中有一個console.writeline來檢查發射。它只是發射兩次。一次當應用程序加載時,並在第一次鼠標懸停。 – GutterStink 2012-03-06 21:09:39

回答

0

這個工作對我來說(我用的RichTextBox)

<Window.Resources> 
    <my:ColorConverter x:Key="colorConverter" /> 
    <Style TargetType="RichTextBox"> 
    <Style.Triggers>    
     <Trigger Property="IsMouseOver" Value="True">      
       <Setter Property="Background"> 
       <Setter.Value> 
         <Binding Converter="{StaticResource colorConverter}"/> 
       </Setter.Value> 
      </Setter> 
     </Trigger> 
    </Style.Triggers> 
</Style> 
</Window.Resources> 

這是轉換器:

public class ColorConverter : IValueConverter 
{ 

    public object Convert(object value, Type targetType, 
     object parameter, CultureInfo culture) 
    {  
     return new SolidColorBrush(Colors.Red); 
    } 

    public object ConvertBack(object value, Type targetType, 
     object parameter, CultureInfo culture) 
    { 
     return null; 
    } 
} 
相關問題