问题描述
ImportsSystem.Data.OleDbPublicClassForm1PrivateSubForm1_Load(ByValsenderAsSystem.Object,_ByValeAsSystem.EventArgs)HandlesMyBase.LoadDimconAsOleDbConnection=NewOleDbConnection(_"Provider=Microsoft.jet.oledb.4.0;datasource=E:我的项目图书管理信息系统图书管理信息系统book.mdb")DimcmdAsOleDbCommand=New_OleDbCommand("SELECTbook_name,book_idFROMbook_info",con)con.Open()DimmyDAAsOleDbDataAdapter=NewOleDbDataAdapter(cmd)DimmyDataSetAsDataSet=NewDataSet()myDA.Fill(myDataSet,"MyTable")'第一种ComboBox1.DataSource=myDataSet.Tables("MyTable").DefaultViewComboBox1.ValueMember="book_name"ComboBox1.DisplayMember="book_info"'第二种'ForEachdRowAsDataRowInmyDataSet.Tables("MyTable").Rows'ComboBox1.Items.Add(dRow.Item("Username"))'Nextcon.Close()con=NothingEndSubPrivateSubComboBox1_SelectedIndexChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesComboBox1.SelectedIndexChangedTextBox1.Text=ComboBox1.SelecteditemEndSubEndClass怎么得不到想要的值提示从类型“DataRowView”到类型“String”的转换无效。我不知道该怎么办了
解决方案
解决方案二:
使用ComboBox1.SelectedText和ComboBox1.SelectedValue获取你绑定的book_name和book_info值。
解决方案三:
代码写得。。。,看得有点费劲,呵呵
解决方案四:
重新贴一下代码吧
解决方案五:
咋一看像文本
解决方案六:
不知你想要得到的是什么,对于你上面所提从类型“DataRowView”到类型“String”的转换无效,可以在后面加上ToString就行了,不过结果返回的是System.Data.DataRowView如果你用ComboBox1.SelectedValue.ToString(的话,返回的是你绑定的背后值(ComboBox1.ValueMember="book_name"),也就是这个字段获取的值