1.如果datagrid显示的数据是从SQL查询后FILL到datatable中的,我怎么再改columnheadertitle成中文? 不用在SQL查询中加别名.2.同上,显示的时候我是否可以把某个列隐藏不在界面中显示出来. 但我在还是datatable 中取到这列数据.谢谢啦!

解决方案 »

  1.   

    1,设置绑定列,在绑定列中可以用中文显示head
    2,可以
      

  2.   

    http://blog.sunmast.com/sunmast/articles/486.aspxdatagrid 应用大全:
    http://blog.csdn.net/cybend/archive/2005/03/27/332208.aspx
    http://www.1sky1.com/edu/n7400c21.shtml设置HeaderText:
    http://www.ftponline.com/china/XmlFile.aspx?ID=168
      

  3.   

    以编程方式隐藏数据网格中的列 在窗体的声明区域,声明 DataGridTableStyle 类的新实例。 
    将 DataGridTableStyle 的 MappingName 属性设置为您希望对其应用样式的数据源中的表。以下示例代码使用 DataGrid.DataMember 属性(假定已经设置了它)。 
    向数据网格表样式集合中添加新的 DataGridTableStyle 对象。 
    通过将列的 Width 属性设置为 0 并指定要隐藏的列的列索引来隐藏列。 
    ' Visual Basic
    ' Declare a new DataGridTableStyle in the
    ' declarations area of your form.
    Dim ts As DataGridTableStyle = New DataGridTableStyle()Sub HideColumn()
       ' Set the DataGridTableStyle.MappingName property
       ' to the table in the data source to map to.
       ts.MappingName = DataGrid1.DataMember   ' Add it to the datagrid's TableStyles collection
       DataGrid1.TableStyles.Add(ts)   ' Hide the first column (index 0)
       DataGrid1.TableStyles(0).GridColumnStyles(0).Width = 0
    End Sub// C#
    // Declare a new DataGridTableStyle in the
    // declarations area of your form.
    DataGridTableStyle ts = new DataGridTableStyle();private void hideColumn()
    {
       // Set the DataGridTableStyle.MappingName property
       // to the table in the data source to map to.
       ts.MappingName = dataGrid1.DataMember;   // Add it to the datagrid's TableStyles collection
       dataGrid1.TableStyles.Add(ts);   // Hide the first column (index 0)
       dataGrid1.TableStyles[0].GridColumnStyles[0].Width = 0;
    }
      

  4.   

    忘了说了,我是用C#做一个windows程序
      

  5.   

    用列样式columnstyle#region 角色信息Datagrid样式
    private void dgColumnStyle_Role(bool editFlag)
    {
    //声明DataGridTableStyle
    DataGridTableStyle myTableStyle = new DataGridTableStyle( );
    myTableStyle.MappingName = "XT_QX_JS_TB";//声明DataGridColumnStyle1
    DataGridTextBoxColumn ColumnStyle1 = new DataGridTextBoxColumn();
    ColumnStyle1.MappingName = "QX_JS_BM";
    ColumnStyle1.HeaderText = "编号";
    ColumnStyle1.Width = 0;
    ColumnStyle1.ReadOnly = true;
    ColumnStyle1.Format= "yyyy年MM月dd日";//这列如果是日期类型可以用指定日期格式显示日期值。
    myTableStyle.GridColumnStyles.Add(ColumnStyle1);//声明DataGridColumnStyle2
    DataGridTextBoxColumn ColumnStyle2 = new DataGridTextBoxColumn();
    ColumnStyle2.MappingName = "QX_JS_MC";
    ColumnStyle2.HeaderText = "名称";
    ColumnStyle2.Width = 120;
    ColumnStyle2.NullText="";
    myTableStyle.GridColumnStyles.Add(ColumnStyle2);//声明DataGridColumnStyle3
    DataGridTextBoxColumn ColumnStyle3 = new DataGridTextBoxColumn();
    ColumnStyle3.MappingName = "QX_JS_MS";
    ColumnStyle3.HeaderText = "描述";
    ColumnStyle3.Width = 120;
    ColumnStyle3.NullText="";
    myTableStyle.GridColumnStyles.Add(ColumnStyle3);//声明DataGridColumnStyle5
    DataGridBoolColumn ColumnStyle5 = new DataGridBoolColumn();
    ColumnStyle5.MappingName = "QX_JS_SFYX";
    ColumnStyle5.HeaderText = "有效";
    ColumnStyle5.AllowNull = false;
    ColumnStyle5.TrueValue = (Decimal)1;
    ColumnStyle5.FalseValue = (Decimal)0;
    ColumnStyle5.Width = 40;
    myTableStyle.GridColumnStyles.Add(ColumnStyle5);//声明DataGridColumnStyle4
    DataGridTextBoxColumn ColumnStyle4 = new DataGridTextBoxColumn();
    ColumnStyle4.MappingName = "QX_JS_XSSX";
    ColumnStyle4.HeaderText = "顺序";
    ColumnStyle4.Width = 40;
    myTableStyle.GridColumnStyles.Add(ColumnStyle4);dataGridMain.TableStyles.Clear();
    dataGridMain.TableStyles.Add( myTableStyle );
    }
    #endregion
    为绑定该数据库的datagrid指定dataGridTableStyle(点击TableStyles属性右边的按纽),设置dataGridTableStyle的MappingName为你的表名,然后再添加GridCloumnStyle(也是点击GridCloumnStyles右边的按纽)设置GridCloumnStyle为表中的列名,想要哪个显示就添加哪个,不要显示就不添加即可!
      

  6.   

    DataGridBoolColumn ColumnStyle5 = new DataGridBoolColumn();
    ColumnStyle5.MappingName = "QX_JS_SFYX";
    ColumnStyle5.HeaderText = "有效";
    ColumnStyle5.AllowNull = false;
    ColumnStyle5.TrueValue = (Decimal)1;
    ColumnStyle5.FalseValue = (Decimal)0;
    ColumnStyle5.Width = 40;
    myTableStyle.GridColumnStyles.Add(ColumnStyle5);
      

  7.   

    非常感谢大家,我昨晚用了 laochai2000(老柴) 的方法,把两个都实现了.现在加分!