Ich möchte DataGridTemplateColumns basierend auf meiner Datenquelle programmgesteuert erstellen können. Wenn meine Quelle beispielsweise ein Datum in einer bestimmten Spalte hat, würde ich gerne ein Datepicker-Steuerelement verwenden können. Ich weiß, dass dies mit xaml und einer DataGridTemplateColumn zur Entwurfszeit leicht erreicht wird, wie würde ich dies jedoch zur Laufzeit erreichen?Programmgesteuertes Erstellen von WPF DataGridTemplateColumn für DataGrid
Ist meine beste Option XamlReader.Load oder eine eher traditionelle Route wie:
Dim TempCol As Microsoft.Windows.Controls.DataGridTemplateColumn
Ich habe keinen Erfolg mit den letzteren hat.
Danke.
-Paul
Edit: Dies ist der Code, den ich verwenden wollte:
Dim TempCol As New Microsoft.Windows.Controls.DataGridTemplateColumn
TempCol.CellEditingTemplate = DataTemplate.Equals(DatePicker)
I erhalten Datepicker ein Typ ist und nicht als Ausdruck verwendet werden.
Ich basiere dies auf der WPF Toolkit-Demo. http://windowsclient.net/wpf/wpf35/wpf-35sp1-toolkit-datagrid-feature-walkthrough.aspx
<dg:DataGridTemplateColumn Header="Date" MinWidth="100">
<dg:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<dg:DatePicker SelectedDate="{Binding Date}" SelectedDateFormat="Short" />
</DataTemplate>
</dg:DataGridTemplateColumn.CellEditingTemplate>
<dg:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Date, StringFormat=d}" />
</DataTemplate>
</dg:DataGridTemplateColumn.CellTemplate>
</dg:DataGridTemplateColumn>
Dank!
Konnten Sie den genauen Code posten, den Sie verwendeten, um die Schablonenspalte zu erzeugen? – Andy
Lassen Sie mich wissen, ob ich noch etwas hinzufügen sollte. Danke. – PaulWaldman