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

请教专家:comboBox读出来的数据为什么会变成System.Data.DataRowView

2012-03-20 
请问专家:comboBox读出来的数据为什么会变成System.Data.DataRowView?comboBox采用数据绑定读取数据库的数

请问专家:comboBox读出来的数据为什么会变成System.Data.DataRowView?
comboBox采用数据绑定读取数据库的数据,绑定成功,数据正常显示出来了。但是我用comboBox1.selectedItem.toString()获取数据时,读出来的数据却变成了System.Data.DataRowView,这是什么原因哦?

[解决办法]
你这里的"comboBox1.selectedItem"其实是System.Data.DataRowView.
而System.Data.DataRowView并没重写ToString(), 所以它执行的是其最最基类的ToString(), 
即object.ToString(), 读出来的数据自然是"System.Data.DataRowView"

[解决办法]
DataRowView selectedItem = (DataRowView)comboBox1.SelectedItem;
MessageBox.Show(selectedItem.Row["列名字"].ToString());

[解决办法]

探讨
DataRowView selectedItem = (DataRowView)comboBox1.SelectedItem;
MessageBox.Show(selectedItem.Row["列名字"].ToString());


[解决办法]
DataRowView selectedItem = (DataRowView)comboBox1.SelectedItem;
MessageBox.Show(selectedItem.Row["列名字"].ToString());


正解,combox.SelectedItem是DataRowView类型
[解决办法]
换成comboBox1.SelectValue或comboBox1.selectedItem.Value.

热点排行