wince环境下,c#用datagrid设置列宽无效,以下是代码
我用的数据库是SQLiteprivate void Form3_Load(object sender, EventArgs e)
        {
            string strConn = @"Data Source=tmjc.s3db";
            SQLiteConnection conn = new SQLiteConnection(strConn);
            string cx = "select tNo as 序号,codeNo as 条码号 from tmh0418";
            SQLiteCommand cmdcx = new SQLiteCommand(cx,conn);
            SQLiteDataAdapter daD = new SQLiteDataAdapter(cmdcx);
            DataTable dtD = new DataTable();
            daD.Fill(dtD);
            DataGridTableStyle myTableStyle = new DataGridTableStyle();
            myTableStyle.MappingName = "dtD ";
            DataGridColumnStyle myColumnStyle1 = new DataGridTextBoxColumn();
            myColumnStyle1.MappingName = "codeNo ";
            myColumnStyle1.Width = 150;
            myTableStyle.GridColumnStyles.Add(myColumnStyle1);
            dataGrid1.TableStyles.Add(myTableStyle);
            dataGrid1.DataSource = dtD.DefaultView;            //设置列宽                        
        }

解决方案 »

  1.   

    dataGrid1.TableStyles["表名"].GridColumnStyles["列名"].Width=列宽
      

  2.   

    问一下你啊dreamrising,我用了你的办法后提示未处理NullReferenceException,怎么回事啊
      

  3.   

    表名,你的tablestyle没有和table做映射
    tableStyle.MappingName = "表名";
      

  4.   

    我已经解决了啊,呵呵string cx = "select tNo as 序号,codeNo as 条码号 from tmh0418";
    把这一句里面的as 序号和 as 条码号去掉就可以啦谢谢你哦