C#设置WinForm中DataGrid列的方法(列宽/列标题等)
本文实例讲述了C#设置WinForm中DataGrid列的方法。分享给大家供大家参考。具体如下:
写winForm的程序,难免要用DataGrid,自然也就需要设置列格式啊,标题之类的!但是经常列标题设置后没反应,好恶心!
这几天做了个程序,自己研究了一下,主要有有一个地方要注意!那就是下面代码中dts.MappingName="Table"; 这段!以下代码不需要在控件上做任何设置,照着写就能搞定!
private void frmLog_Load(object sender, System.EventArgs e) { //设置DataGrid的列宽 InitDataGridColumnHeader(); //GetResult(); } private void InitDataGridColumnHeader() { DataGridTableStyle dts=new DataGridTableStyle(); //注意:必须加上这一句,否则自定义列格式无法使用 dts.MappingName="Table"; hrgLog.TableStyles.Add(dts); hrgLog.TableStyles[0].GridColumnStyles.Clear(); //========================设置表头栏位=========================== DataGridTableStyle dtsLog = new DataGridTableStyle(); DataGridTextBoxColumn colID = new DataGridTextBoxColumn(); colID.Width=80; colID.HeaderText = "记录序号"; colID.MappingName = "ID"; hrgLog.TableStyles[0].GridColumnStyles.Add(colID); DataGridTextBoxColumn colLog = new DataGridTextBoxColumn(); colLog.Width=200; colLog.HeaderText = "日志内容"; colLog.MappingName = "LogMessage"; hrgLog.TableStyles[0].GridColumnStyles.Add(colLog); DataGridTextBoxColumn colTime = new DataGridTextBoxColumn(); colTime.Width=100; colTime.HeaderText = "记录时间"; colTime.MappingName = "LogTime"; hrgLog.TableStyles[0].GridColumnStyles.Add(colTime); DataGridTextBoxColumn colCatalog = new DataGridTextBoxColumn(); colCatalog.Width=100; colCatalog.HeaderText = "日志类别"; colCatalog.MappingName = "LogCatalog"; hrgLog.TableStyles[0].GridColumnStyles.Add(colCatalog); }
希望本文所述对大家的C#程序设计有所帮助。
赞 (0)