日期:2014-05-17  浏览次数:21328 次

datagridview 列名绑定
本帖最后由 xuliangone1 于 2012-12-06 18:30:56 编辑  datagridview.datasouce=ds

ds 如下(select a,b,c,d from table where ..)得到:
A   B   C  D
1   2   3  4

我在datagridview的属性添加列名
姓名 绑定到A
年龄绑定到B
工号绑定到C
卡号绑定到D

运行调试,不刷卡显示:
姓名 年龄 工号 卡号

第一次刷卡显示:
姓名 年龄 工号 卡号
1     2    3     4

接着第二次刷卡 显示:(卡号一样,获取的DS完全一样)
A   B   C  D
1   2   3  4


哪设置错了。。?重新调试运行 还是这样。



PS:ABC只读 D可以修改。。如何设置鼠标点击datagridview(除了D列点了修改外),点其他地方将textbox1设为焦点?哪个事件触发?


VS2010

------最佳解决方案--------------------
你参考一下
            this.dataGridView1.DataSource = ds;
            this.dataGridView1.DataMember = "students";
            this.dataGridView1.Columns[0].Visible=false;
            this.dataGridView1.Columns[1].HeaderText = "名字";
            this.dataGridView1.Columns[2].HeaderText = "年龄";
            this.dataGridView1.Columns[3].HeaderText = "性别";
            this.dataGridView1.Columns[4].HeaderText = "班级";
            this.dataGridView1.Columns[5].HeaderText = "学生号";
------其他解决方案--------------------
可能是代码的什么地方导致datagridview的datasource被设置为null
致使datagridview的绑定样式被清除,从而显示方式与在数据库中取得的一样
建议楼主用程序设置datagridview的列样式,每次赋值datasource之前都绑定一样样式即可
------其他解决方案--------------------
引用:
你参考一下
            this.dataGridView1.DataSource = ds;
            this.dataGridView1.DataMember = "students";
            this.dataGridView1.Columns[0].Visible=false;
            this……



与我直接控件设置有什么区别??