我的窗体上只放了dataGridView1和bindingSource1两个控件,写了以下类来连接绑定数据:
private void GetData(string selectCommand)
        {
            try
            {
                String connectionString ="server = (local); database = mms; uid = sa; pwd = pass";                SqlDataAdapter dataAdapter = new SqlDataAdapter(selectCommand, connectionString);                SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);                DataTable table = new DataTable();
                table.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapter.Fill(table);
                bindingSource1.DataSource = table;                dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
            }
            catch (SqlException err)
            {
                MessageBox.Show("数据库连接/打开出错!请检查数据库连接字符串等信息!\n\n"+err.Message,"错误提示");
            }
        }程序运行时通过以下方式加载数据到dataGridview1上:
private void Form2_Load(object sender, EventArgs e)
        {
            string sqlstring;
            sqlstring = "SELECT gh,name,state,mobile FROM dianyuan";
            this.GetData(sqlstring);
            
        }现在的问题是:
1、取出来的数据的列标题为数据库字段名,我想字定义列标题;
2、数据的列宽为自动的,我想指定各列宽度;
3、如何修改、插入、删除记录;
4、由于加载的数据很多,运行起来很慢,请问有没有办法使加载数据的速度加快?说明一下,我是一个初学者,希望各位能多多赐教,在下不胜感激,能解决以上问题者再加分,问题描述时请尽量详细点,谢谢了!

解决方案 »

  1.   

    1.
    http://msdn2.microsoft.com/zh-cn/library/system.windows.forms.datagridview.adjustcolumnheaderborderstyle(VS.80).aspx2.自动适应列宽
    DataGridView.Columns("Description").Width *= 4
     
    3. 已经是数据库建立了, 那就直接数据库操作, 结束再绑定就行了4. 只读取用sqlReader, 尽量用sql语句, 数据库建立索引
      

  2.   

    第三个问题补充.
    http://spyu2000.spaces.live.com/blog/cns!74EE1B39762BCAC9!122.entry
      

  3.   

    谢谢你的回答!但是问题还没有解决。问题一:http://msdn2.microsoft.com/zh-cn/library/system.windows.forms.datagridview.adjustcolumnheaderborderstyle(VS.80).aspx里的内容我看不明白;
    但这个问题我可以直接通过SQL语句解决,但感觉不太好,想找个更好的方法:问题二:
    DataGridView.Columns("Description").Width *= 4
    错误 1、非静态的字段、方法或属性“System.Windows.Forms.DataGridView.Columns.get”要求对象引用错误 2 “System.Windows.Forms.DataGridView.Columns”是“属性”,但此处被当做“方法”来使用如果改为:this.dataGridView1.Columns("Description").Width *= 4;错误 1 “System.Windows.Forms.DataGridView.Columns”是“属性”,但此处被当做“方法”来使用问题三、四:还是不知如何解决,能否详细点,非常感谢!
      

  4.   

    欢迎各界.Net初学&高手们加入Q群12757054(要经常在线)
    希望大家的问题能够及时的得到解决.