如何解决System.ArgumentException: '设置 DataSource 属性时无法修改项目集合'加载表单时
我正在尝试使用 ComboBox 加载表单,我正在模块化代码并搞砸了一些东西,现在出现了这个问题。非常感谢任何帮助。
System.ArgumentException: '设置 DataSource 属性时无法修改项目集合。'
这是我的代码
Private Sub FillBookingDataCombo()
Dim dt = GetBookingData()
cmbroomType.Items.Clear()
cmbroomType.displayMember = "fname"
cmbroomType.ValueMember = "BookingID"
cmbroomType.DataSource = dt
End Sub
Public Function GetBookingData() As DataTable
Dim dt As New DataTable()
Using con1 As New sqliteConnection(ConnectionString),cmd As New sqliteCommand("Select booking.BookingID,customers.fname FROM booking inner join customers ON booking.bcustomerid = customers.customerid ",con1)
con1.open()
dt.Load(cmd.ExecuteReader)
End Using
Return dt
End Function
解决方法
我猜错误出现在 cmbRoomType.Items.Clear()
行上。如果我是正确的,只需删除该行。
这用于不将 DataTable 与组合一起使用,而是将项目添加到组合的模式。
使用 DataTable 时,组合将显示 DataTable 中的任何内容,并且您不会通过组合本身添加或删除项目。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。