已经使用DataSet向DataGrid中填入数据,发现列宽度不随数据长度自动调整,如何手动设置列宽度。谢谢!首次用C#开发数据库应用程序,请帮助。

解决方案 »

  1.   

    DataGridTableStyle怎么用?详细点好吗?谢谢!
      

  2.   

    if(gridIN.TableStyles.Count == 0)
    {
    DataGridTableStyle ts = new DataGridTableStyle();
    ts.SelectionBackColor = System.Drawing.SystemColors.Desktop;
    ts.AllowSorting = false;
    ts.ReadOnly = true;
    ts.MappingName = gridIN.DataMember;
    //如要此tablestyle存在就不在增加
    gridIN.TableStyles.Add(ts);
    //設置第一列為0
    gridIN.TableStyles[0].GridColumnStyles[0].Width = 0;
    gridIN.TableStyles[0].HeaderFont = new Font("Verdana",30);
    }
      

  3.   

    this.dgStudent.SetDataBinding (myDataSet,"Temp");
    DataGridTableStyle TSCenter=new DataGridTableStyle ();
    TSCenter.ReadOnly = true;
    dgStudent.TableStyles.Add (TSCenter);
    dgStudent.TableStyles[0].GridColumnStyles[0].Width =100; 看一下,哪里错了,运行不通过!
      

  4.   

    主要是dgStudent.TableStyles[0].GridColumnStyles[0].Width =100; 这一句报错!
      

  5.   

    <ItemStyle Font-Size="9pt" Width="350px"></ItemStyle>
      

  6.   

    这是什么,WinForm开发中好像用不到?应当是Web应用程序吧。
      

  7.   

    private void BindDgrdEmployee(ref string strError)
    {
    DataGridTableStyle dataGridTableTargetStyle=null;
    DataGridTextBoxColumn dataGridTextBoxColumn=null; string[,] strArr=new string[,]{
    {"UserInfoID","UserInfoID","0"},
    {"UserID",qpLetter.GetFaceLetter(40),"45"},
    {"CompanyID",qpLetter.GetFaceLetter(41),"75"},
    {"Name",qpLetter.GetFaceLetter(42),"60"},
    {"Sex",qpLetter.GetFaceLetter(43),"40"},
    {"CertificateType",qpLetter.GetFaceLetter(44),"60"},
    {"CertificateCode",qpLetter.GetFaceLetter(45),"150"},
    {"CompanyRe",qpLetter.GetFaceLetter(55),"200"}
    };
    if(m_objDS==null)
    strError+="m_objDS==null";
    else
    dgrdEmployee.SetDataBinding(m_objDS,"UserInfo"); dataGridTableTargetStyle=new DataGridTableStyle();
    dataGridTableTargetStyle.MappingName=m_objDS.Tables["UserInfo"].TableName;
    dataGridTableTargetStyle.AlternatingBackColor=Color.Gainsboro;
    dataGridTableTargetStyle.SelectionBackColor=Color.Blue;
    dataGridTableTargetStyle.RowHeadersVisible=false; for(int i=0;i<strArr.Length/3;i++)
    {
    dataGridTextBoxColumn=new DataGridTextBoxColumn();
    dataGridTextBoxColumn.MappingName=strArr[i,0];
    dataGridTextBoxColumn.HeaderText=strArr[i,1];
    dataGridTextBoxColumn.Width=int.Parse(strArr[i,2]);
    dataGridTableTargetStyle.GridColumnStyles.Add(dataGridTextBoxColumn);
    } dgrdEmployee.TableStyles.Add(data
      

  8.   

    dgrdEmployee.TableStyles.Add(dataGridTableTargetStyle);
      

  9.   

    设置列的宽度
    dtgrd.Columns0].ItemStyle.Width = 350;
    dtgrd.Columns[0].HeaderStyle.Width = 350;