html5中文学习网

您的位置: 首页 > 网络编程 > ASP.NET » 正文

C# WinForm中DataGrid列设置(列宽/列标题等)_.NET教程_编程技术

[ ] 已经帮助:人解决问题
datagrid
   写winForm的程序,难免要用DataGrid,自然也就需要设置列格式啊,标题之类的!

 但是经常列标题设置后没反应,好恶心!

        这几天做了个程序,自己研究了一下,主要有有一个地方要注意!那就是下面代码中的“红色

字部分!以下代码不需要在控件上做任何设置,照着写就能搞定!以前好象还有人花5000分买

这个问题的解决答案的,哎,怎么我没碰上啊!

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);     

  }
 

9QEHTML5中文学习网 - HTML5先行者学习网
9QEHTML5中文学习网 - HTML5先行者学习网
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助