场景
Winform中使用DataGridView实现加载数据并显示在led大屏中。
需要设置整个DataGridView的前景色、背景色、单元格颜色、标题栏样式、禁止
改变行高、列宽、不显示新增行、取消选中样式等。
注:
博客:
霸道流氓气质的博客_CSDN博客-C#,架构之路,SpringBoot领域博主
实现
1、DateGridView实现黑底红色,可通过设置、背景色、前景色和字体颜色、
默认列标题样式实现。
BackgroundColor设置背景色
GridColor设置网格线颜色
BorderStyle设置边框样式,这里是None代表无
RowHeadersVisables设置是否显示包含行标题的列,这里是False
EnableHeadersVisualStyles设置为false时自己设置的行列标题样式才能生效,
否则使用系统默认的样式
ColumnHeadersBorderStyle应用于列标题的边框样式,这里是None
2、然后再在窗体load事件中再设置一些样式
dataGridView1.ForeColor = Color.Red;
dataGridView1.DefaultCellStyle.BackColor = Color.Black;
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black;
dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.Red;
// 禁止用户改变DataGridView的所有列的列宽
dataGridView1.AllowUserToResizeColumns = false;
//禁止用户改变DataGridView所有行的行高
dataGridView1.AllowUserToResizeRows = false;
// 禁止用户改变列头的高度
dataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
// 禁止用户改变列头的宽度
dataGridView1.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.DisableResizing;
//不显示空白新增行
dataGridView1.AllowUserToAddRows = false;
3、DataGridView设置取消选中样式
重写SelectionChanged事件
事件实现
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
dataGridView1.ClearSelection();
}
4、填充数据源
封装一个数据源实体对象
class ResultVo
{
[Description("序号")]
public int number { get; set; }
[Description("班组")]
public string team { get; set; }
[Description("方向")]
public string direction { get; set; }
[Description("车号")]
public string carNumber { get; set; }
[Description("司机")]
public string driver { get; set; }
public ResultVo()
{
}
public ResultVo(int _number, string _carNumber, string _driver)
{
number = _number;
carNumber = _carNumber;
driver = _driver;
}
public ResultVo(int _number, string _carNumber)
{
number = _number;
carNumber = _carNumber;
}
public ResultVo( string _carNumber, string _driver)
{
carNumber = _carNumber;
driver = _driver;
}
public ResultVo(int _number,string _team,string _direction,string _carNumber,string _driver)
{
number = _number;
team = _team;
direction = _direction;
carNumber = _carNumber;
driver = _driver;
}
}
然后设置数据源
List<ResultVo> list = new List<ResultVo>() {
new ResultVo(1,"掘进1", "2201测测测测测测", "营R0001","张三"),
new ResultVo(2,"掘进1", "2201测测测测测测555", "营R0001","张三四"),
};
//绑定数据源
dataGridView1.DataSource = list;
5、设置每一列的标题
if (dataGridView1.Columns.Count>4) {
//设置标题
dataGridView1.Columns[0].HeaderText = "序号";
dataGridView1.Columns[1].HeaderText = "班组";
dataGridView1.Columns[2].HeaderText = "方向";
dataGridView1.Columns[3].HeaderText = "车号";
dataGridView1.Columns[4].HeaderText = "司机";
}
6、设置每一列的宽度
if (dataGridView1.Columns.Count>=4) {
dataGridView1.Columns[0].Width = 40;
dataGridView1.Columns[1].Width = 80;
dataGridView1.Columns[2].Width = 150;
dataGridView1.Columns[3].Width = 80;
dataGridView1.Columns[4].Width = 80;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135803.html