Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Winforms组合框在单击时不会展开,有什么想法吗?_C#_.net_Winforms_Combobox - Fatal编程技术网

C# Winforms组合框在单击时不会展开,有什么想法吗?

C# Winforms组合框在单击时不会展开,有什么想法吗?,c#,.net,winforms,combobox,C#,.net,Winforms,Combobox,表单模式对话框中的组合框在单击时不会打开,但是可以使用向上/向下箭头键选择项目。 单击另一个窗口并返回对话框后,组合框按预期工作,即单击展开 奇怪的。。。知道是什么导致了这种行为吗 提前多谢了, 彼得 编辑: 组合框由编译时创建,但由运行时填充 使组合框和封闭表单无效没有帮助 按照Henk的建议,我尝试使用设计器添加一个新的Combobox,其结果与现有Combobox的代码完全相同。新的Combobox在为空时可以正常工作,但只要以编程方式设置数据源,就会采用奇怪的行为。。。以下是我正在做的:

表单模式对话框中的组合框在单击时不会打开,但是可以使用向上/向下箭头键选择项目。 单击另一个窗口并返回对话框后,组合框按预期工作,即单击展开

奇怪的。。。知道是什么导致了这种行为吗

提前多谢了, 彼得

编辑: 组合框由编译时创建,但由运行时填充

使组合框和封闭表单无效没有帮助

按照Henk的建议,我尝试使用设计器添加一个新的Combobox,其结果与现有Combobox的代码完全相同。新的Combobox在为空时可以正常工作,但只要以编程方式设置数据源,就会采用奇怪的行为。。。以下是我正在做的:

comboBox1.DataSource = langs;
comboBox1.DisplayMember = "NativeName";
comboBox1.ValueMember = "Name";
langs是一个包含两个条目的列表

嗯。如果我将Items属性预设为任意两个项目,例如A、B,则一切正常。。。。。嗯?这对我来说很有效,但似乎很奇怪。这是虫子吗?
不,不是真的,我这方面的误解

也许执行了像OnClick这样的事件,将e.handled设置为true


另外,如何插入组合框、运行时或编译时?如果是运行时,可能您错过了什么?

将组合框的TabIndex从1更改为3就成功了。别问我为什么…:-/

您是否尝试过在设计器中拖动组合框的下拉区域?

我遇到了这个问题。我错误地将所有选项设置为style=display:none。这并不明显,因为选定的选项仍然显示在组合框中,我可以使用箭头键导航组合框选项,但正如peter所述,单击下拉箭头没有任何效果。
在我删除显示后:选项中没有显示正常工作。

谢谢您的建议。不,任何事件都没有附加任何内容,只有单击确定按钮。comboxbox由编译时开发设计器插入,但由runtime.Btw填充。只是在更新数据源后尝试了失效,但这没有帮助:跟进:您在哪里设置数据源?在OnActivate中?这里的标准诊断是Control.Capture存在问题。捕获鼠标后,需要单击两下。第一次单击将取消捕获。从你的帖子中完全不清楚它被捕获的原因。@nobugz:不,这不是点击两次的问题。单击后,组合框将被聚焦。我可以使用箭头键选择,但只要我没有聚焦中间的另一个元素,组合框就不会打开。