DataGrid Cell中的WPF Stackpanel

时间:2012-04-25 08:35:24

标签: wpf wpfdatagrid wpftoolkit

我有一个WPF应用程序,其中包含一个Window,里面有一个DataGrid。在启动时,DataGrid完全为空,其列在运行时由代码创建。

我绑定到DataTable。第一个coloumn是单个文本字段。我需要再显示一行Cell,但是作为Stackpanel,它本身拥有一些UserControls。

实际上我正在尝试首先插入一个空白列作为我的StackPanel的占位符,然后将CodePanel从Code插入每个Cell。

不幸的是,由于某些原因,我没有让它运行。我不能把新的物品放到细胞中。请问有人帮帮我吗?

最诚挚的问候,

纳斯

2 个答案:

答案 0 :(得分:1)

尝试并使用DataGridTemplateColumn,然后您可以在每个单元格中放置一个堆栈面

答案 1 :(得分: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>