grid1.TableStyles[0].GridColumnStyles[0].Width=100;

解决方案 »

  1.   

    代码如下:
    dgNeiRong.DataSource=myds.Tables[0].DefaultView;
    dgNeiRong.TableStyles[0].GridColumnStyles[0].Width=100;
    却不起作用,为何??
      

  2.   

    DataView tv = (DataView) dataGrid1.DataSource;   //这里假设绑定的是DataView,这里要变一下
    DataGridTableStyle ts = new DataGridTableStyle();  
    ts.MappingName = tv.Table.TableName; //如果绑定的是Datatable,这里要变一下
    int numCols = tv.Table.Columns.Count;
    int i=0;
    DataGridTextBoxColumn aColumnTextColumn;
    while (i < numCols) //重绘所有的列
    {
    aColumnTextColumn = new DataGridTextBoxColumn();
    aColumnTextColumn.MappingName = tv.Table.Columns[i].ColumnName;
    ts.GridColumnStyles.Add(aColumnTextColumn);  //增加一种自定义的column风格
    i ++;
    }dataGrid1.TableStyles.Add(ts);dataGrid1.TableStyles[0].GridColumnStyles[0].Width = 80;  //第一列的宽度
    dataGrid1.TableStyles[0].GridColumnStyles[0].HeaderText="XXXXX"; //第一列的标题
    dataGrid1.TableStyles[0].GridColumnStyles[1].Width = 200;  //第二列的宽度
    dataGrid1.TableStyles[0].GridColumnStyles[1].HeaderText="YYYYY"; //第二列的标题
     
    dataGrid1.Refresh();