1

データグリッド列を動的に作成し、アカウント設定に基づいてデータを動的に要求するデータベース アクセス プログラムを構築しています。同じ方法で機能するデータグリッドがいくつかあり、ほとんどの場合、それらは完全に機能します。すべてのテキスト列は、すべてのデータを格納するために使用するデータテーブルにバインドされますが、テンプレート列をデータテーブル列にバインドする方法がわかりません。テンプレート列を日付ピッカー列として使用していますが、それが役立つ場合があります。

ビジュアルは正常に読み込まれます。つまり、問題なく表示および操作できるという意味で、列は完全に読み込まれます。主な問題は、それらをデータテーブル自体にバインドすることです。どんな助けでも大歓迎です。データグリッドは常に存在することに注意してください。完全に動的なのは列のみです。

これが私がやったことの基本的なバージョンです(wpfで)

<ResourceDictionary>
    <DataTemplate x:Key="datePickerTemplate">
        <DatePicker Text="{Binding}"/>                                      
    </DataTemplate>
</ResourceDictionary>

<DataGrid x:Name="datagrid_1" ItemsSource = "{Binding}" AutoGenerateColumns = "False">

(C# の場合)

//creates a text column (works just fine)
DataGridTextColumn textcolumn = new DataGridTextColumn();
textcolumn.Header = "text column";
textcolumn.Binding = new Binding("bind test column"); //text columns bind fine          
datagrid_1.Columns.Add(setexpmeetdatecolumn); 

//create template column
DataGridTemplateColumn templatecolumn = new DataGridTemplateColumn();
templatecolumn.Header = "date template column";
templatecolumn.CellTemplate = (DataTemplate)FindResource("datePickerTemplate");
(problem -> ) templatecolumn.Binding = new Binding("bind test column"); //this is what I need to accomplish, but am not finding any legible answers that are coherent to understand.     

datagrid_1.Columns.Add(templatecolumn); 
4

1 に答える 1