我写了一个方法,语句如下:
DataGridTableStyle ts1 = new DataGridTableStyle();
// ts1.MappingName = "TemperatureWarn";
// DataGridTextBoxColumn myDataCol1=new DataGridTextBoxColumn();
myDataCol1.HeaderText="报警温度下限";
// myDataCol1.Width =500;
//
// myDataCol1.MappingName="TemperatureL";
// ts1.GridColumnStyles.Add(myDataCol1);
//
// dgWarn.TableStyles.Add(ts1);
程序执行完后,datagrid的列名变了.但是列宽却没变,这是什么原因呀..我真是纳闷死了呀....
哪位GG帮忙解决一下,不甚感激呀.....
DataGridTableStyle ts1 = new DataGridTableStyle();
// ts1.MappingName = "TemperatureWarn";
// DataGridTextBoxColumn myDataCol1=new DataGridTextBoxColumn();
myDataCol1.HeaderText="报警温度下限";
// myDataCol1.Width =500;
//
// myDataCol1.MappingName="TemperatureL";
// ts1.GridColumnStyles.Add(myDataCol1);
//
// dgWarn.TableStyles.Add(ts1);
程序执行完后,datagrid的列名变了.但是列宽却没变,这是什么原因呀..我真是纳闷死了呀....
哪位GG帮忙解决一下,不甚感激呀.....
解决方案 »
- 请问下大们Handle具体有些什么用?
- 利用IrisSkin2换肤控件,在使用通用对话框时出现的问题
- 一般在系统中,哪部分内容要用缓存???一些类继承IDisposed接口,但是又没实现,这有什么作用??
- 有种的请进来(UP有分)
- windows窗口在设计时出现乱码是怎么回事
- 有关用C#控制FLASH的显示问题,查了92条帖子,没有我想要的,只好再问了,谢谢先
- C#项目开发。怎样和SQL 2000的数据表连接
- .net和数据库
- ★★★★以前问过的问题,没人理我。请教达人关于C#在WinForm中自定义控件的问题??
- 怎么保护 excel 中的那几个列和那几个 cell,没有可以用的分了,可怜可怜一下
- 关于WaitHandle.WaitAll()的问题,高手请进
- 关于数据库连接池的疑惑
dtgChequeList.DataSource = dsChequeList.Tables[0];//添加表格样式
DataGridTableStyle dtgStyle = new DataGridTableStyle();
dtgStyle.RowHeadersVisible = false;
DataTable dt = (DataTable) dtgChequeList.DataSource;
dtgStyle.MappingName = dt.TableName;
//第一列
DataGridTextBoxColumn dtgColumnStyle0 = new DataGridTextBoxColumn();
dtgColumnStyle0.TextBox.Enter += new System.EventHandler(TextBoxEnterHandle);
dtgColumnStyle0.MappingName = dt.Columns[0].ColumnName; //from dataset table
dtgColumnStyle0.HeaderText = dt.Columns[0].ColumnName;
dtgColumnStyle0.Width = 0;
dtgColumnStyle0.ReadOnly=true;
dtgStyle.GridColumnStyles.Add(dtgColumnStyle0);
//第二列
DataGridTextBoxColumn dtgColumnStyle1 = new DataGridTextBoxColumn();
dtgColumnStyle1.TextBox.Enter += new System.EventHandler(TextBoxEnterHandle);
dtgColumnStyle1.MappingName = dt.Columns[1].ColumnName; //from dataset table
dtgColumnStyle1.Width = 50;
dtgColumnStyle1.ReadOnly=true;
dtgColumnStyle1.HeaderText = "影像ID";
dtgColumnStyle1.Alignment = HorizontalAlignment.Center;
dtgStyle.GridColumnStyles.Add(dtgColumnStyle1);
//第三列
DataGridTextBoxColumn dtgColumnStyle2 = new DataGridTextBoxColumn();
dtgColumnStyle2.TextBox.Enter += new System.EventHandler(TextBoxEnterHandle);
dtgColumnStyle2.MappingName = dt.Columns[2].ColumnName; //from dataset table
dtgColumnStyle2.Width = 150;
dtgColumnStyle2.ReadOnly=true;
dtgColumnStyle2.HeaderText = "票据类型";
dtgStyle.GridColumnStyles.Add(dtgColumnStyle2);
//添加总样式到DataGrid上
dtgStyle.PreferredRowHeight = 20;
dtgStyle.BackColor = System.Drawing.Color.White;
dtgStyle.AlternatingBackColor = System.Drawing.Color.LightGray;
this.dtgChequeList.TableStyles.Clear();
this.dtgChequeList.TableStyles.Add(dtgStyle);
http://blog.csdn.net/knight94/archive/2006/03/17/627556.aspx
所以你在代码中改列宽是起不了作用的.以下是建立一个空的Form,在上面只加了一个DataGrid控件后的Load代码,这样是可以随便设置private void Form1_Load(object sender, System.EventArgs e)
{
DataTable tb = new DataTable("TemperatureWarn");
tb.Columns.Add("TemperatureL", typeof(string)); DataGridTableStyle ts1 = new DataGridTableStyle();
ts1.MappingName = "TemperatureWarn"; DataGridTextBoxColumn myDataCol1=new DataGridTextBoxColumn();
myDataCol1.HeaderText="报警温度下限";
myDataCol1.Width =20;
myDataCol1.MappingName="TemperatureL"; ts1.GridColumnStyles.Add(myDataCol1);
this.dataGrid1.TableStyles.Add(ts1); this.dataGrid1.DataSource = tb;
}