我已經創建了一個自定義按鈕,它上面有一個布爾標誌來表示它是否被選中。如果選擇了我想更改按鈕的背景顏色,以便用戶快速瞭解他們正在查看的控件。問題是我無法讓觸發器正常工作。我在這裏看到的所有東西,我已經嘗試過,但是在我的代碼的InitializeComponent部分中仍然出現錯誤。爲自定義屬性設置觸發器WPF
下面是我處理的
Private mIsSelected As Boolean = False
Public Property IsSelected() As Boolean
Get
Return mIsSelected
End Get
Set(ByVal value As Boolean)
mIsSelected = value
End Set
End Property
Public Shared ReadOnly MyBackgroundProperty As DependencyProperty = DependencyProperty.Register("MyBackground",
GetType(LinearGradientBrush), GetType(RentAdjButtons),
New PropertyMetadata(New LinearGradientBrush(ColorConverter.ConvertFromString("#3366CC"), ColorConverter.ConvertFromString("#0000FF"), New System.Windows.Point(0.5, 0), New System.Windows.Point(0.5, 1))))
Private mMyBackground As New LinearGradientBrush
Public Property MyBackground() As LinearGradientBrush
Get
Return mMyBackground
End Get
Set(ByVal value As LinearGradientBrush)
mMyBackground = value
End Set
End Property
屬性,這裏是我的XMAL
<Style TargetType="Com:RentAdjButtons">
<Setter Property="MyBackground" Value="{StaticResource DefaultBackground}" />
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="MyBackground" Value="{StaticResource SelectedButton}" />
</Trigger>
</Style.Triggers>
</Style>
目前我得到的錯誤是「屬性不能爲空就觸發」
預先感謝您的幫助
您的IsSelected屬性也應該是一個DependencyProperty –