给DataGridView添加表样式
本文关键字:样式 添加 DataGridView | 更新日期: 2023-09-27 18:13:49
当我为Windows CE开发时,我有一个叫做DataGrid
的组件。现在,使用Windows窗体,在最近的版本中,我只有DataGridView
,它没有TableStyles
。我试着控制它的DataGridTextBoxColumn
,但是我做不到。我从KeyValuePair的列表绑定它的数据,我不知道我怎么能控制它的列的东西,像MappingName, HeaderText或宽度。我的代码目前如下:
public IList<KeyValuePair<int, string>> Lista
{
set
{
dgwWorkitem.DataSource = value;
DataGridTableStyle tabela = new DataGridTableStyle
{
MappingName = dgwWorkitem.GetType().Name
};
DataGridTextBoxColumn id = new DataGridTextBoxColumn
{
MappingName = @"Key",
HeaderText = @"Id",
Width = (((dgwWorkitem.Width) / 2) / 2)
};
DataGridTextBoxColumn titulo = new DataGridTextBoxColumn
{
MappingName = @"Value",
HeaderText = @"Título",
Width = (((dgwWorkitem.Width) / 2) + ((dgwWorkitem.Width / 2) / 2))
};
tabela.GridColumnStyles.Add(id);
tabela.GridColumnStyles.Add(titulo);
// dgwWorkitem.TableStyles.Clear();
// dgwWorkitem.TableStyles.Add(tabela);
}
}
我使用set
来绑定数据,然后我想操作,但是DataGrid
中的TableStyles
在DataGridView
中不被接受。如何在不创建DataGridTableStyle
的情况下操作它们?
您不需要创建新的DataGridTableStyle
。知道了它的索引,只需单独操作每个属性:
public IList<KeyValuePair<int, string>> Lista
{
set
{
dgwWorkitem.DataSource = value;
dgwWorkitem.Columns[0].HeaderText = @"Id";
dgwWorkitem.Columns[0].Width = (((dgwWorkitem.Width) / 2) / 2);
dgwWorkitem.Columns[1].HeaderText = @"Título";
dgwWorkitem.Columns[1].Width = (((dgwWorkitem.Width) / 2) + ((dgwWorkitem.Width / 2) / 2));
}
}
这样你就可以像以前一样处理Id
和Título
了