在WPF DataGrid中手动添加行

San*_*sal 8 c# silverlight wpf xaml datagrid

我有以下XAML代码:

<sdk:DataGrid Margin="58,8,52,18" Name="dataGridTickets">
    <sdk:DataGrid.Columns>
        <sdk:DataGridTextColumn x:Name="ticketNoColumn" Header="Ticket No." IsReadOnly="True" Width="SizeToHeader"/>
        <sdk:DataGridTextColumn x:Name="seatRowColumn" Header="Seat Row" IsReadOnly="True" Width="SizeToHeader"/>
        <sdk:DataGridTextColumn x:Name="seatNumberColumn" Header="Seat Number" IsReadOnly="True" Width="SizeToHeader"/>
    </sdk:DataGrid.Columns>
</sdk:DataGrid>
Run Code Online (Sandbox Code Playgroud)

我想以编程方式将手动数据输入网格,我该如何设法做到这一点?

谢谢

工作方案

以编程方式在WPF DataGrid中添加行

IAm*_*rey 8

如果您不想数据绑定datagrid(即使在运行时),您可以按照此SO文章中的建议操作:

以编程方式将列和行添加到WPF Datagrid

基本上,您创建一个新行(在代码中)并用项填充它,然后将其分配给您的网格.

就像Henk指出的那样,这不是一个很好的做法.如果这是一次性情况,可能有理由,但一般情况下,您应该通过更新基础数据源来处理它.以下是Microsoft的一个示例:

http://social.msdn.microsoft.com/Forums/en/wpf/thread/9b96a798-e185-4d90-ba73-afc35eb91643


Hen*_*man 7

您不向网格添加行.

  1. 将网格绑定到列表(可观察集合)
  2. 将项目添加到该列表.

结果:新行显示在网格中.

  • @Biggs:这些实例被称为意大利面条.如果必须,添加中间列表.控件不是数据结构. (8认同)
  • 为什么不?我知道这不是正常使用,但可以做到.可能存在向列表添加项目不是首选操作方法的情况. (5认同)