首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# winform 中DataGridView中的DataGridViewComboBoxColumn解决办法

2013-09-05 
C# winform 中DataGridView中的DataGridViewComboBoxColumn很疑惑,百度了下,越看越不懂,有的人说用Combobo

C# winform 中DataGridView中的DataGridViewComboBoxColumn
很疑惑,百度了下,越看越不懂,有的人说用Combobox直接添加进DataGridView中,我不需要这么高端,我只需要自带的控件添加进去,可是我没搞定,希望大侠给点指点
首先
1.拖控件。。。DataGridView、GroupBox等等等,此处省略500字。。。
2.根据数据库的字段来编辑字段,因为我知道里面会包含很多控件,单单的Select语句出来的数据源已经无法阻止我。
C# winform 中DataGridView中的DataGridViewComboBoxColumn解决办法
3.界面搭建好了,去后台代码连接数据库取数据源

这个是数据库查出来的,那么这个 Shipdate这列就应该是第一行是男,第二行是女,当我点击这列时候再出现 “男 女 未知”这个数据源给我选               


[解决办法]
先不管你绑定的东西是哪里来的


                DataTable temptable = new DataTable();
                temptable.Columns.Add("index");
                temptable.Columns.Add("value");
                ((DataGridViewComboBoxColumn)setteidialog.grid_homon_saki.Columns[1]).Resizable = DataGridViewTriState.False;
                for (int no = 0; no < 3; no++)
                {
                    temptable.Rows.Add((no).ToString(), string.Format("{0} {1}", (no).ToString(), moji_saki_kubun(no)));

                }
                ((DataGridViewComboBoxColumn)setteidialog.grid_homon_saki.Columns[1]).DataSource = temptable;
                ((DataGridViewComboBoxColumn)setteidialog.grid_homon_saki.Columns[1]).DisplayMember = "value";
                ((DataGridViewComboBoxColumn)setteidialog.grid_homon_saki.Columns[1]).ValueMember = "index";

moji_saki_kubun 里 写的就是你 获取到的 所有下拉框绑定的东西
取初始值的时候  grid_homon_saki.Rows[i].Cells[1].Value = s.value.ToString(); 直接写就好
dt[i].tosting是你从数据库 明确值的那个
然后 更新就和TEXT形式的GRID什么的也就都一样了。

热点排行