我在web的datagrid中添加了一个绑定列,但当这个绑定列的内容长度超过了我设计时给定的长度的部分显示为...  
不要换行显示或把datagrid托长。

解决方案 »

  1.   

    ds.Tables.Clear();
    da.Fill(ds); this.dataGrid1.DataSource = ds.Tables[0];
    this.dataGrid1.CaptionText = "当前部门: "+strDept; DataGridTableStyle ts = new DataGridTableStyle(true);
    ts.MappingName = ds.Tables[0].TableName;
    dataGrid1.TableStyles.Clear();
    dataGrid1.TableStyles.Add(ts);
    ts.GridColumnStyles[0].Width = 0;
    ts.GridColumnStyles[0].ReadOnly = true;
    ts.GridColumnStyles[4].Width = 200;
      

  2.   

    楼上的尘飞扬,你写的代码是web开发还是windows开发呀,怎么调试不过去呀?
    DataGridTableStyle ts = new DataGridTableStyle(true);
      

  3.   

    可以在ItemDataBound 事件中写
    string str = e.item.cell[3].text;
    if(str.length > 20)
      str.length = str.submit(0,20) + ".....";
      

  4.   

    用列样式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为表中的列名,想要哪个显示就添加哪个,不要显示就不添加即可!MappingName一定要指定,不然没有效果!不仅能控制你的列宽,还能控制其他,如表头显示中文,日期按照格式显示!
      

  5.   

    ColumnStyle3.Width = 120,着就是控制宽度的!
      

  6.   

    ColumnStyle的Width用来控制宽度的