问题标签 [focus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4817 浏览

c# - DataGridView:FullRowSelect 和焦点

我在模式窗口中有一个 DataGridView,其中包含我的程序的选项列表。网格有两个列。第一个包含用于选择该选项的复选框,第二个是该选项的名称/描述。winform 还包含确定和取消按钮,但这不是重点。下面的代码做了我想要的。由于 FullRowSelect 属性,复选框被选中/取消选中,您单击该行内的任意位置。但是,它不再在当前行周围显示蓝色背景或虚线。我如何能够在不丢失任何当前功能的情况下添加它?

编辑:详细说明;我想要的是再次启用所选行/单元格上的虚线和/或蓝色背景。看起来我目前的代码以某种方式禁用了这个......

相关当前代码:

0 投票
3 回答
1902 浏览

.net - 确定停用表单时的激活位置

有谁知道在停用表单时确定哪个窗口将获得焦点的方法?

0 投票
12 回答
96157 浏览

wpf - WPF 和初始焦点

似乎当 WPF 应用程序启动时,没有任何焦点。

这真的很奇怪。我使用过的所有其他框架都符合您的预期:将初始焦点放在 Tab 键顺序中的第一个控件上。但我已经确认它是 WPF,而不仅仅是我的应用程序 - 如果我创建一个新窗口,并在其中放入一个 TextBox,然后运行该应用程序,则 TextBox 在我单击它或按 Tab 之前没有焦点. 呸。

我的实际应用程序比文本框更复杂。我在 UserControls 中有几层 UserControls。其中一个 UserControls 具有 Focusable="True" 和 KeyDown/KeyUp 处理程序,我希望它在我的窗口打开后立即获得焦点。不过,我仍然有点 WPF 新手,而且我没有太多运气弄清楚如何做到这一点。

如果我启动我的应用程序并按 Tab 键,然后焦点转到我的可聚焦控件,它开始按我想要的方式工作。但我不希望我的用户必须先点击 Tab 才能开始使用该窗口。

我玩过 FocusManager.FocusedElement,但我不确定将其设置在哪个控件上(顶级窗口?包含可聚焦控件的父级?可聚焦控件本身?)或将其设置为什么。

我需要做什么才能让我的深层嵌套控件在窗口打开后立即获得初始焦点?或者更好的是,将第一个可聚焦控件聚焦在 Tab 键顺序中?

0 投票
2 回答
4238 浏览

c# - 受按钮影响的按键事件

我是新来的,我在使用 C# 应用程序时遇到了一些问题。我想捕获按键按下事件。起初这不是问题,但在我向表单添加一些按钮后,表单的按键事件会忽略箭头键并将焦点从一个按钮移动到下一个按钮。(按键事件有效)是否有当我按住箭头键时,如何阻止这种情况并让他们做其他事情?

0 投票
1 回答
18168 浏览

wpf - 删除用户控件上的焦点矩形

我有一个带有 Focusable="True" 的 WPF UserControl。它是窗口中唯一可聚焦的控件。

每当用户按下 Tab 或 Alt(尤其是当他们按下 Alt+Tab 键到另一个应用程序时),我的 UserControl 都会获得一个虚线边框,也就是焦点矩形。然后焦点矩形一直停留在那里,直到窗口关闭。

如何防止我的 UserControl 显示此焦点矩形?

编辑

事实证明,我的用户控件实际上并没有显示焦点矩形。我的 Focusable UserControl 包含另一个 UserControl,而后者又包含一个 ItemsControl,而 ItemsControl 就是显示焦点矩形的内容。

当我将 FocusVisualStyle="{x:Null}" 添加到 ItemsControl 时,焦点矩形消失了。

0 投票
2 回答
1515 浏览

wpf - 为什么 ItemsControl 在其父对象获得焦点时显示焦点矩形?

当 WPF 的 ItemsControl 认为它有焦点并且用户按下 Tab 或 Alt 时,它会显示一个焦点矩形。

但我最近有一个 ItemsControl 显示一个焦点矩形,即使它没有焦点——它的一个父项有焦点。ItemsControl 位于 UserControl 内部,而后者位于另一个具有焦点的 UserControl内部。像这样的东西:

或者,要直观地显示嵌套:

我花了一段时间(还有一个StackOverflow 问题)来弄清楚焦点矩形的来源,因为我从没想过没有焦点的控件会显示焦点矩形。

我仍在学习如何使用 WPF,显然我还不够了解,否则这不会让我感到困惑。两个问题可以帮助我理解:

  1. 为什么ItemsControl 实际上没有焦点,但它的父控件之一却显示焦点矩形?这个功能的原因是什么?(我确定有一个——可能与模板或可视化树有关?——我只是对 WPF 机制和哲学还没有足够深入的了解。)
  2. 这是如何工作的?ItemsControl 使用什么机制来决定它应该显示一个焦点矩形?
0 投票
2 回答
1298 浏览

c# - 如何在 C# 的线程中使按钮成为焦点

我需要在线程末尾设置一个按钮焦点。Button.Focus() 方法似乎不起作用。

例如:

但是,如果我将 Button2.Focus() 放在 Button1_Click 中,它将聚焦,但对于我的项目,我不能这样做。

0 投票
2 回答
6045 浏览

c# - 防止窗口焦点改变

我正在尝试用一点代码来帮助残疾人,以帮助他更轻松地玩游戏。他仅限于一个轨迹球和一个按钮。

目前,他使用屏幕键盘并设法使用它玩其他游戏。我创建了一小段代码来尝试让他的生活更轻松。它使用悬停按钮作为键。当鼠标指针进入按钮时,它向下发送键,当它离开按钮时,它向上发送键。

我有这个工作,我认为(或希望)他会喜欢它。当我测试它时,它工作得很好。

我想向它添加一项功能。如果他在我的控制下单击,我想发送不同的击键。没问题,我能做到。但是,当我这样做时,窗口焦点从游戏转移到我的控制。

我在 MSDN 上找到了这个:

http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/48737c2b-7e6f-4ade-ac1c-7dd2f5cc2b88/

这可以防止我的窗口激活,但它仍然会导致游戏失去焦点。我可以将焦点重新回到游戏上,但我希望它永远不会失去焦点。

我正在用 C# 和 WPF 进行编码。

有人对您如何做到这一点有任何想法吗?

约翰芬顿

0 投票
4 回答
1951 浏览

wpf - 任何人都有调试WPF焦点的好方法?

我现在将在我的 WPF 应用程序中专注于地狱。焦点在元素之间跳来跳去,似乎消失了,只是在反复按下 Tab 键时才出现在另一个元素上。

有没有我可以绑定标签的属性,或者只是告诉我当时键盘焦点锁定在什么上的东西?有时我可以看到蚂蚁轨迹(虚线)表明某物有焦点,但我不知道它在关闭键盘焦点的周围是什么!

0 投票
2 回答
2132 浏览

c# - WPF 焦点问题

我有处理我的控件的 LostFocus 事件的代码。它验证该值,并且在某些情况下将启用后续控制。例如,可能有一个允许用户选择国家/地区的 ComboBox。随后的 ComboBox 允许用户选择一个状态。如果当前选择的国家不是美国,则禁用状态组合框。如果用户选择“USA”,然后在组合框中跳出选项卡,LostFocus 代码将启用状态 ComboBox。但是,State ComboBox 没有获得焦点,而是焦点转到 State ComboBox 后面的控件。

我尝试使用 PreviewLostKeyboardFocus 来处理事件,但没有成功。对于想办法破解 WPF 来完成这项工作,我有点不知所措。有什么建议么?