gpt4 book ai didi

winforms - 无法从数据绑定(bind) Winforms 下拉列表中跳出

转载 作者:行者123 更新时间:2023-12-02 22:14:42 24 4
gpt4 key购买 nike

这有点奇怪,但我已经挣扎了几个小时,但我不明白发生了什么。

我想知道是否有其他人遇到过这个问题,并且也许可以解释一下。我正在构建一个简单的 Winforms 应用程序并尝试使用许多内置控件。

基本上,我有一个带有用户控件和一些数据捕获字段的表单。其中 3 个字段是下拉列表,在用户控件上,我有一个直接绑定(bind)到 Product 类的 BindingSource 控件。

在运行时,我向 BindingSource 提供 Product 类的实例,该类包含 ProductType 的属性。 。为了简单起见,我还添加了 List<ProductType> ProductTypes 到产品类,该类在查询时会自行加载,这意味着我可以使用相同的绑定(bind)源并选择 ProductTypes数据成员作为下拉列表的数据源。

运行表单后,列表完美绑定(bind),我可以看到列出的所有产品类型,并且可以选择一个并选项卡或单击到下一个字段。但显然所选值不会绑定(bind),因为我没有为下拉列表选择任何绑定(bind)-SelectedValue,只有一个数据源。一旦我确保下拉列表通过绑定(bind)到 Bindings-SelectedValue 来修改产品的实例,然后运行表单,列表仍然会完美填充,只要我不这样做,我就可以通过选项卡浏览控件从下拉列表中进行选择。如果我从下拉列表中进行选择,则下拉列表将保持焦点。我无法选择爱情或金钱,甚至无法单击表单上的取消按钮,右上角的关闭按钮是我可以单击的唯一有效按钮,并且无法单击任何其他字段或下拉菜单。一旦做出选择,这就会影响所有三个下拉菜单。

有人知道我缺少什么吗?

我尝试更改一些内容,并通过向下拉值提供 string[] 而不是对象的成员来取得一些成功。这似乎可行,但违背了使用数据绑定(bind)的目的,不是吗?

感谢任何帮助!

最佳答案

只是在这里猜测,因为我现在没有时间设置测试并确认,但是你正在做任何验证吗?我似乎记得,如果内容不验证,数据绑定(bind)控件将不会让您离开。即使您没有明确表示,也可以尝试将 CausesValidation 设置为 False,看看是否有任何类型的验证在幕后进行,这至少会给您一个提示。

关于winforms - 无法从数据绑定(bind) Winforms 下拉列表中跳出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/290629/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com