在WinForms中选中隐藏控件

时间:2009-07-31 23:03:44

标签: c# winforms keyboard

我的Windows窗体应用程序中有一个笔记编辑器控件:

alt text http://img82.imageshack.us/img82/2033/tabtohiddencontrol.png

我想通过键盘访问此控件:我希望能够对其进行TAB,通过控件进行TAB,然后选择TAB。

通常这是一项简单的任务,但问题是隐藏的主题文本框。根据设计,仅当用户单击主题标签时,才能编辑主题。

当我的控件获得焦点时,我想开始编辑主题;使主题文本框可见并集中。

WinForms不喜欢这个;我的主题文本框是隐藏的,因此当我进入和退出我的控件时,WinForms会跳过它。 如何使这项工作?

2 个答案:

答案 0 :(得分:1)

您必须在之前代码的lostfocus中添加代码(或按下以检查TAB)。而且,您必须在下一个控件中添加代码(在标签文本框之后)以检查Shift + TAB。

您还可以在具有助记符的主题之前添加标签,因此用户可以按ALT + S到达那里。

这是我能立刻想到的 如果我不明白你的问题,请纠正我。

答案 1 :(得分:1)

当用户点击主题标签时,取消隐藏主题文本框并将焦点设置为它。

控件必须可见并启用为Tab键顺序的一部分;您无法切换到不可见或禁用的控件。