Hallo,
es geht um eine Oberfläche, die unter VS2012 mit XAML erstellt wurde, und ein darin befindliches DataGrid. Das DataGrid erhält seine Daten aus einer DataTable:
DataTable displayTable;
...
DisplayGrid.ItemsSource = displayTable.DefaultView;
Das Problem tritt auf, wenn die Spaltennamen einen oder mehrere Unterstriche "_" enthalten.
Wenn ich mir die Spaltennamen im Debugger anschaue, sind die Namen vor und nach der Zuweisung OK, also sowohl
displayTable.Columns[i].Caption
als auch
DisplayGrid.Columns[i].Header
In der GUI hingegen fehlt der erste Unterstrich.
Beim Betätigen der ALT-Taste wird zudem der erste dem Unterstrich folgende Buchstabe unterstrichen.
Beispiel:
Spaltenname = test_column
angezeigter Spaltenname: testcolumn
nach ALT: testcolumn
Hat jemand ne Idee, wie es zu dem Phänomen kommt?
Wie könnte ich erreichen, dass der Spaltenname korrekt angezeigt wird?
Vielen Dank
Christel
Es ist schlimm, eine Ausnahme zu sein, aber noch schlimmer, keine zu sein.
Du musst die Underscores escapen.
Das solltest Du durch doppelte Unterstriche erreichen.
Du musst die Underscores escapen.
Das solltest Du durch doppelte Unterstriche erreichen.
Besten Dank,
heißt das, dass ich nach der Zuordnung
DisplayGrid.ItemsSource = displayTable.DefaultView;
die Unterstriche durch doppelte Unterstriche ersetzen muss, um eine korrekte Anzeige zu erhalten?
Christel
Es ist schlimm, eine Ausnahme zu sein, aber noch schlimmer, keine zu sein.
Ist Windonws-Forms nicht falsch?
Ich würde glaube eher einen Converter nutzen. Alternativ kann auch das Template überschrieben werden. Am Bespiel eines Labels siehe hier: Underscores not displayed in WPF
Ich habs nach WPF verschoben.
Danke für den Link, ich schaue mir das mal in Ruhe an.
Es ist leider ein fremdes Projekt, in das ich mich erst einarbeiten muss.
Christel
Es ist schlimm, eine Ausnahme zu sein, aber noch schlimmer, keine zu sein.