【问题标题】:DataGrid Placeholder Row Header customizationDataGrid 占位符行标题自定义
【发布时间】:2013-07-18 23:14:35
【问题描述】:

我有一个 WPF DataGrid,DataSource 是一个ObservableCollection<MyItem>

MyItem 具有名为Hour 的属性,该属性是自动生成的。小时在 DataGrid 中用作 RowHeader。

如果我向集合中添加一个新项目,Hour 属性将被填充并且 RowHeader 将显示它。但我无法控制“占位符行”的 RowHeader。

如何实现占位符行的 RowHeader 始终是 * 字符,但所有普通行都具有 Hour 属性作为 RowHeader?

【问题讨论】:

    标签: wpf datagrid datagridrowheader


    【解决方案1】:

    MyItem 中删除了小时(那里并不真正需要),并使 RowHeader 自动生成。 如果 Row.Item 不是 MyItem,则 * 以编程方式设置为 Row.Header。

        void DataGrid_LoadingRow(object sender, DataGridRowEventArgs e)
        {
            if (e.Row.Item is MyItem)
            {
                e.Row.Header = (e.Row.GetIndex()).ToString("D2");
            }
            else // Row is {NewItemPlaceholder}
            {
                e.Row.Header = "✲";
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-12
      相关资源
      最近更新 更多