vb.net - 为什么我使用列表框点包含时会出错?
问题描述
所以当我使用这段代码时:
If lbMembers.Contains(lbStudents.SelectedItem) Then
MessageBox.Show("Can't add the same person twice")
End If
它并没有说有错误。但是,当我启动应用程序时,它会在我尝试使用它的那一刻崩溃并给我以下消息:
System.InvalidCastException:'无法将'System.String'类型的对象转换为'System.Windows.Forms.Control'类型
我已经尝试了我能想到的一切,但我无法弄清楚。
请帮助一个新手!
解决方案
因为 ListBox 是一个控件,而不是事物的集合。你需要使用lbMembers.Items.Contains
.
https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listbox.items?view=netframework-4.8
推荐阅读
- gitlab - 如何从我的 IBM Cloud Git Repos and Issue Tracking 存储库下载原始文件?
- syntax - Rust 声明性宏中的 @ 符号是什么意思?
- python - 如何将文本添加到列表中的每个项目
- c# - IServerSideEvents 的 IOC 注入
- typescript - 无法访问我的 component.html 中的 null/undefined 属性
- javascript - 无法使用快速验证器在视图中显示错误消息
- c# - c#在系统控制中启用音频设置“听这个设备”
- sql-server - 如何将文件内容作为数据导入表列
- c# - 使用实体框架在 Razor 页面项目上的本地 IIS 上发布时 SQL 不连接
- c# - 如何让 TestServer 返回遵循重定向的客户端