場景
Winform中使用DataGridView實現(xiàn)加載數(shù)據(jù)并顯示在led大屏中。
需要設(shè)置整個DataGridView的前景色、背景色、單元格顏色、標(biāo)題欄樣式、禁止
改變行高、列寬、不顯示新增行、取消選中樣式等。
注:
博客:
霸道流氓氣質(zhì)的博客_CSDN博客-C#,架構(gòu)之路,SpringBoot領(lǐng)域博主
實現(xiàn)
1、DateGridView實現(xiàn)黑底紅色,可通過設(shè)置、背景色、前景色和字體顏色、
默認(rèn)列標(biāo)題樣式實現(xiàn)。
BackgroundColor設(shè)置背景色
GridColor設(shè)置網(wǎng)格線顏色
BorderStyle設(shè)置邊框樣式,這里是None代表無
RowHeadersVisables設(shè)置是否顯示包含行標(biāo)題的列,這里是False
EnableHeadersVisualStyles設(shè)置為false時自己設(shè)置的行列標(biāo)題樣式才能生效,
否則使用系統(tǒng)默認(rèn)的樣式
ColumnHeadersBorderStyle應(yīng)用于列標(biāo)題的邊框樣式,這里是None
2、然后再在窗體load事件中再設(shè)置一些樣式
??????????? 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設(shè)置取消選中樣式
重寫SelectionChanged事件
事件實現(xiàn)
??????? private void dataGridView1_SelectionChanged(object sender, EventArgs e)
??????? {
??????????? dataGridView1.ClearSelection();
??????? }
4、填充數(shù)據(jù)源
封裝一個數(shù)據(jù)源實體對象
??? 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("司機(jī)")]
??????? 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;
??????? }
??? }
然后設(shè)置數(shù)據(jù)源
??????????? List<ResultVo> list = new List<ResultVo>() {
??????????????? new ResultVo(1,"掘進(jìn)1", "2201測測測測測測", "營R0001","張三"),
??????????????? new ResultVo(2,"掘進(jìn)1", "2201測測測測測測555", "營R0001","張三四"),
???????????? };
??????????? //綁定數(shù)據(jù)源
??????????? dataGridView1.DataSource = list;
5、設(shè)置每一列的標(biāo)題文章來源:http://www.zghlxwxcb.cn/news/detail-414244.html
??????????? if (dataGridView1.Columns.Count>4) {
??????????????? //設(shè)置標(biāo)題
??????????????? dataGridView1.Columns[0].HeaderText = "序號";
??????????????? dataGridView1.Columns[1].HeaderText = "班組";
??????????????? dataGridView1.Columns[2].HeaderText = "方向";
??????????????? dataGridView1.Columns[3].HeaderText = "車號";
??????????????? dataGridView1.Columns[4].HeaderText = "司機(jī)";
??????????? }
6、設(shè)置每一列的寬度文章來源地址http://www.zghlxwxcb.cn/news/detail-414244.html
??????????? 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;
??????????? }
到了這里,關(guān)于Winform中DataGridView設(shè)置前景色、單元格背景色、標(biāo)題欄樣式、禁止改變高寬、不顯示空白行、清除選中樣式、填充數(shù)據(jù)源、設(shè)置標(biāo)題、設(shè)置單列寬度的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!