0

ウィンドウを含むWPFアプリケーションを持っています。その中にDataGridがあります。起動時には、DataGrid は完全に空であり、その列は実行時にコードによって作成されます。

私は DataTable にバインドしています。最初の列は単一のテキスト フィールドです。行ごとにもう 1 つのセルを表示する必要がありますが、それ自体がいくつかの UserControls を保持する Stackpanel として表示する必要があります。

実際には、最初に空の列を StackPanel のプレースホルダーとして挿入し、後で Code から StackPanel を各セルに挿入しようとしています。

残念ながら、何らかの理由で実行できません。セルに新しいアイテムを配置できません。誰か助けてくれませんか?

よろしくお願いします、

ジョナス

4

2 に答える 2

1

XAMLを介してデータグリッドを設計および入力することをお勧めします。

  • YourItemsは、表示するオブジェクトのコレクションです。
  • userControlColumnは、usercontrolの追加の列です
  • firstColumnは最初のDataGridTextColumnです

    <DataGrid x:Name="myGrid" ItemsSource="{Binding YourItems}">
        <DataGrid.Columns>
            <DataGridTemplateColumn x:Name="userControlColumn" Header="Column1">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <StackPanel>
                            <ns:YourCustomControl/>
                        </StackPanel>
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>
            <DataGridTextColumn x:Name="firstColumn" Header="Columns2" Binding="{Binding YourDesiredProperty}"/>
        </DataGrid.Columns>
    </DataGrid>
    
于 2012-04-25T09:34:12.600 に答える
1

を試して使用するとDataGridTemplateColumn、各セルにスタックパネルを配置できます

于 2012-04-25T08:38:22.547 に答える