具体情况如标题:(如果有其他控制列宽的方法请不吝赐教!)具体情况如标题:(如果有其他控制列宽的方法请不吝赐教!)DataGridTableStyle myTableStyle = new DataGridTableStyle();
myTableStyle.MappingName = "随便临时表名";DataGridColumnStyle col1 = new DataGridTextBoxColumn();
col1.MappingName = "病害名称";
col1.HeaderText = "病害名称";
col1.Width = this.dataGrid1.Width / 2;DataGridColumnStyle col2 = new DataGridTextBoxColumn();
col2.MappingName = "病害ID";
col2.HeaderText = "病害ID";
col2.Width = this.dataGrid1.Width / 4;DataGridColumnStyle col3 = new DataGridTextBoxColumn();
col3.MappingName = "相似度";
col3.HeaderText = "相似度";
col3.Width = this.dataGrid1.Width / 4;myTableStyle.GridColumnStyles.Add(col1);
myTableStyle.GridColumnStyles.Add(col2);
myTableStyle.GridColumnStyles.Add(col3);
this.dataGrid1.TableStyles.Clear();
this.dataGrid1.TableStyles[0].MappingName = "病害诊断结果";
this.dataGrid1.TableStyles.Add(myTableStyle);然后this.dataGrid1.DataSource绑定数据源以上语句追踪过,全都有执行过,但是现实的结果却还是默认的状态!
各位大大有空看看或者帮我想想可能的错误在哪里?
先O(∩_∩)O谢谢了!
myTableStyle.MappingName = "随便临时表名";DataGridColumnStyle col1 = new DataGridTextBoxColumn();
col1.MappingName = "病害名称";
col1.HeaderText = "病害名称";
col1.Width = this.dataGrid1.Width / 2;DataGridColumnStyle col2 = new DataGridTextBoxColumn();
col2.MappingName = "病害ID";
col2.HeaderText = "病害ID";
col2.Width = this.dataGrid1.Width / 4;DataGridColumnStyle col3 = new DataGridTextBoxColumn();
col3.MappingName = "相似度";
col3.HeaderText = "相似度";
col3.Width = this.dataGrid1.Width / 4;myTableStyle.GridColumnStyles.Add(col1);
myTableStyle.GridColumnStyles.Add(col2);
myTableStyle.GridColumnStyles.Add(col3);
this.dataGrid1.TableStyles.Clear();
this.dataGrid1.TableStyles[0].MappingName = "病害诊断结果";
this.dataGrid1.TableStyles.Add(myTableStyle);然后this.dataGrid1.DataSource绑定数据源以上语句追踪过,全都有执行过,但是现实的结果却还是默认的状态!
各位大大有空看看或者帮我想想可能的错误在哪里?
先O(∩_∩)O谢谢了!
DataGridTableStyle myTableStyle = new DataGridTableStyle( );
danweiTableStyle.MappingName = "Customers"; //声明DataGridColumnStyle
DataGridColumnStyle bianhaoStyle = new DataGridTextBoxColumn( );
bianhaoStyle.MappingName = "Bianhao";
bianhaoStyle.HeaderText = "编号";
bianhaoStyle.Width = 31; //添加列格式和表格式
myTableStyle.GridColumnStyles.Add( bianhaoStyle );
myDataGrid.TableStyles.Add( myTableStyle );
但是要注意MappingName 属性,如果是要绑定数据源,MappingName 属性的值一定要和表对应!
因为是映射啊!
ds.ReadXml("\\storage card\\health_knowledge.xml");//读取健康知识xml文件,
DataTable newTables = ds.Tables[0].Copy();
newTables.Columns.Remove("solution");//删除solution列
newTables.Columns.Remove("others");//删除others列
DataGridTableStyle ts = new DataGridTableStyle();
ts.MappingName = "newTables"; DataGridColumnStyle idStyle = new DataGridTextBoxColumn();
idStyle = new DataGridTextBoxColumn();
idStyle.MappingName = "id";
idStyle.HeaderText = "id";
idStyle.Width = this.Width/4;
ts.GridColumnStyles.Add(idStyle); DataGridColumnStyle problemStyle = new DataGridTextBoxColumn();
problemStyle = new DataGridTextBoxColumn();
problemStyle.MappingName = "problem";
problemStyle.HeaderText = "problem";
problemStyle.Width = this.Width/2;
ts.GridColumnStyles.Add(problemStyle);
dataGrid1.TableStyles.Add(ts);
dataGrid1.DataSource = newTables;
为什么我这样子还是不行呢宽度依然不变。
problemStyle.Width = this.Width/2;这两句应该是
idStyle.Width = 10;
problemStyle.Width = 100;刚才乱修改,贴上来的时候没注意,宽度分别是10和100,但是显示的时候依然不变。为什么呢