我有一個DatagridTemplate列包含一個複選框,當我的ItemSource屬性是「J」時通過轉換器得到檢查,並且當屬性是「N」時取消選中。WPF DataGridTemplateColumn複選框元素IsChecked與轉換器TwoWay綁定
這是有效的,但現在我希望將屬性設置爲「J」,如果選中複選框或「N」,則取消選擇它。
我的專欄:
<local:JNConverter x:Key="JNConverter" />
<DataGridTemplateColumn Header="">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ContentControl HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" HorizontalAlignment="Center">
<CheckBox Name="auto" HorizontalAlignment="center" IsChecked="{Binding Path=Autonummering, Converter={StaticResource JNConverter}, Mode=TwoWay}" />
</ContentControl>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我的轉換器:
公共類JNConverter 器具的IValueConverter
Public Function Convert(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert
If value IsNot Nothing AndAlso value.ToString.ToLower = "j" Then
Return True
Else
Return False
End If
End Function
Public Function ConvertBack(ByVal value As Object, ByVal targetType As System.Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.ConvertBack
If CType(value, Boolean) Then
Return "J"
Else
Return "N"
End If
End Function
末級
我的ItemSource是一個List(中Attribuut) Attribuut:
Public Class Attribuut
Inherits DependencyObject
Public Shared AutonummeringProperty As DependencyProperty = DependencyProperty.Register("Autonummering", GetType(String), GetType(Attribuut))
Public Property Autonummering As String
End Class
那麼,我將如何「反向」綁定點擊複選框將Autonummering屬性更改爲「J」或「N」?
在此先感謝
您的轉換器不工作嗎? – 2011-04-28 19:17:28
我猜不是!?... – 2011-04-28 19:37:58