【发布时间】:2018-09-17 18:54:34
【问题描述】:
我有一个 Windows 窗体组合框,它没有显示当前记录的显示值。下拉列表显示正确的值——Box、Skid、Tray——但文本框中的初始值是 ID;那就是我看到“3”而不是“托盘”。我错过了什么?
这是表格的值;每个项目都有一个容器 ID:
这里是组合框的值。这会将上面的图表链接到一个容器:
组合框中显示的值是 ID,而不是容器名称。这应该显示“Box, Box, Skid”,而是显示 3, 3, 2。
您可以看到下拉列表已正确填充:
以下是在设计器中创建组合框的方式。我还尝试将所选值设置为上面第一张图片中显示的数据集中的 containerID,但我得到的结果与将其留空相同。
设计器代码如下所示:
以下是数据源的设置方式:
这是获取组合框值的查询:
这是获取项目值的查询:
【问题讨论】:
-
尝试使用 BindingList 而不是 List。
-
尝试了一个 BindingList 并得到了相同的结果。感谢您的建议,如果您还有其他建议,请告诉我。
-
你的 ContainersModel 类是什么样的?
-
我将它添加到原始问题中。它有一个名为 containerID 的 int 和一个名为 containerName 的字符串。
-
旁注:代码图片通常会吸引反对票。始终尝试将代码 sn-ps 作为文本发布。
标签: c# winforms combobox windows-forms-designer bindingsource