写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); 
 }
赞
If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
 
 
QQ:154298438
QQ:417480759