Guten Abend,
Ich bin noch ein Neuling in Sachen WPF und Datenbindung. Mein Problem ist folgendes. Ich fülle mein DataGrid zur Laufzeit (Programmstart) mit einem binären Serialisierer. Nun sollen die Rows (oder z.B. die Schriftfarbe) meiner Objekte im DataGrid unterschiedlich eingefärbt werden. Die Objekte haben ein Enum als Eigenschaft. Nun bekomme ich es leider nicht hin, dieses Eigenschaft im XAMl-Code meinem ValueConverter zu übergeben.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| [ValueConversion(typeof(MyEnum), typeof(Brush))] public class MyEnumConverter : IValueConverter } public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { }
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { throw new NotSupportedException(); } } |
Nun habe ich folgendes im XAML Code geschrieben:
XML-Daten
1: 2: 3: 4: 5: 6: 7: 8: 9:
| <Window x:Class="MyApp.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:MyApp" Title="MyApp" Height="350" Width="525" Closing="WindowClosing"> <Window.Resources> <local:MyEnumConverter x:Key="myEnumConverter "> </local:MyEnumConverter > </Window.Resources> |
Und hier fehlt nun wahrscheinlich der richtige Code:
XML-Daten
1: 2: 3:
| <DataGrid Name="dataGrid"> <DataGridRow Binding="{Binding Path=MyEnum}"></DataGridRow> </DataGrid> |
Der Converter (objekt: myEnumConverter), die Eigenschaft (MyEnum) und das gebundende Objekt muss in den XAML Code noch rein. Kann mir das jemand erläutern?
Danke euch.
Liebe Grüße.
Moderiert von
Christian S.: C#- durch XML-Tags ersetzt