Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.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# 组合框可以';不要失去焦点_C#_Winforms - Fatal编程技术网

C# 组合框可以';不要失去焦点

C# 组合框可以';不要失去焦点,c#,winforms,C#,Winforms,我有几个组合框,它们都是手动输入的文本。在combox选择之后,不能失去焦点。我用过: this.ActiveControl = null; 它可以工作,但是焦点总是指向第一个控件 您能建议修复此问题吗?创建一个隐藏控件并将焦点设置为该控件。这样看来,似乎什么都没有聚焦。大概是这样的: private void Form1_MouseClick(object sender, MouseEventArgs e) { ActiveControl = HiddenControl; } 以下

我有几个组合框,它们都是手动输入的文本。在combox选择之后,不能失去焦点。我用过:

this.ActiveControl = null;
它可以工作,但是焦点总是指向第一个控件


您能建议修复此问题吗?

创建一个隐藏控件并将焦点设置为该控件。这样看来,似乎什么都没有聚焦。大概是这样的:

private void Form1_MouseClick(object sender, MouseEventArgs e)
{
    ActiveControl = HiddenControl;
}
以下是Visual Studio 2012项目:

所以您希望所有控件都失去焦点?你到底想什么时候发生?你的问题很不清楚。也许可以为我们扩展一个it,甚至是一个代码示例。我认为不可能不关注任何控件。在winforms中必须始终有一个关注的控件,但我不确定。也许你必须创造无形的控制,并集中它。如果我是对的,请投票。如果我有这样的奉献精神,我会点击组合框并选择一个项目。然后我点击表单,但仍然不能失去焦点。我使用鼠标滚轮滚动整个表单。看到了吗?是否要我尝试为它旁边的每个组合框创建隐藏控件?否,您只需要一个隐藏控件,然后可以在窗体
鼠标单击
事件或
组合框
es
SelectedIndexChanged
事件后分配它。文本框是否适合隐藏控件?无法将焦点设置为隐藏控件。设置为不在窗口的控件是可以的。给它一个具有大的负X属性值的位置。我已经在Visual Studio 2010和Visual Studio 2012中测试了答案中的代码。您确实可以将窗体的活动控件设置为隐藏控件。