Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf DataGrid占位符行标题自定义_Wpf_Datagrid_Datagridrowheader - Fatal编程技术网

Wpf DataGrid占位符行标题自定义

Wpf DataGrid占位符行标题自定义,wpf,datagrid,datagridrowheader,Wpf,Datagrid,Datagridrowheader,我有一个WPF数据网格,数据源是一个可观察的集合 MyItem具有自动生成的名为Hour的属性。小时用作数据网格中的行标头 如果向集合中添加新项,将填充Hour属性,并且RowHeader将显示它。但我无法控制“占位符行”的行标题 如何实现占位符行的RowHeader始终是*字符,但所有正常行都具有作为RowHeader的Hour属性?从MyItem中删除了Hour(实际上不需要),并使RowHeader自动生成。 如果Row.Item不是MyItem,则通过编程将*设置为Row.Header

我有一个WPF数据网格,数据源是一个
可观察的集合

MyItem
具有自动生成的名为
Hour
的属性。小时用作数据网格中的行标头

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


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

MyItem
中删除了Hour(实际上不需要),并使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 = "✲";
        }
    }