【问题标题】:WPF Datagrid row numberWPF Datagrid 行号
【发布时间】:2009-08-26 04:28:16
【问题描述】:

我有一个数据网格。我想要一个在行中仅显示 1 2 3 4 ... 的列,最多可显示我从其他数据绑定创建的行数。

 <dg:DataGridTextColumn Header="#" IsReadOnly="True"
                                           Binding="...."         />

【问题讨论】:

  • 我找到了一个答案作为数据网格的属性,以显示前导数字列。我忘记了实际的属性。
  • 你忘了??这有点没用。你不能花点时间看看你的程序吗?

标签: wpf datagrid


【解决方案1】:

我今天花了很多时间查看 MSDN 文档和其他线程来寻找这个答案。我决定实现这一点的方式是绑定一个属性(我创建的),专门用于数据网格绑定到的集合中的对象中的行号。例如

public class myItem
{
    public int LineNumber { get; set; }
    // rest of your object...
}

您必须自己手动设置对象中的行号。

另一种添加行号的方法可以找到here。代码如下:

datagrid.LoadingRow += 
    new EventHandler<DataGridRowEventArgs>(datagrid_LoadingRow);

...
void datagrid_LoadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.Header = e.Row.GetIndex();
}

此实现将行号放在行标题中,并且不需要您为对象中的行号放置一个属性。但是,如果您需要从数据网格中插入或删除一行,则行号不会更新。

【讨论】:

  • 第二个不行。当我们上下滚动时,所有的表头值都会被打乱。这是因为 DataGrid 的内部行为可以提高性能。
  • 如果你使用的是MSSQL Server 2005+,你可以试试:msdn.microsoft.com/en-us/library/ms186734.aspx
猜你喜欢
  • 2014-03-27
  • 1970-01-01
  • 2011-06-07
  • 1970-01-01
  • 1970-01-01
  • 2011-07-29
  • 2012-12-09
  • 2015-08-03
  • 2012-10-04
相关资源
最近更新 更多