键盘焦点移至 DataGrid

2023-11-22

我有一个 WPF DataGrid,想要将焦点设置到第一个项目,以便用户在第一次打开对话框时可以使用键盘在项目列表中导航。使用 datagrid.Focus ( );我可以将焦点设置到 DataGrid,但这显然不是键盘焦点,因为当我按向下箭头键时,我无法在 DataGrid 中导航。焦点跳转到文本框“描述”,但这不是我想要的(见图)。

enter image description here

如何以正确的方式将焦点和键盘焦点设置到 DataGrid?感谢您的帮助。


好的,我找到了解决方案。这对我有用

Keyboard.Focus (GetDataGridCell (dataGridFiles.SelectedCells[0]));

private System.Windows.Controls.DataGridCell GetDataGridCell (System.Windows.Controls.DataGridCellInfo cellInfo)
{
  var cellContent = cellInfo.Column.GetCellContent (cellInfo.Item);

  if (cellContent != null)
    return ((System.Windows.Controls.DataGridCell) cellContent.Parent);

  return (null);
}

现在,我获得了正确的焦点并且可以使用键盘进行导航。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

键盘焦点移至 DataGrid 的相关文章

  • EventHandler 应该始终用于事件吗?

    我一直在愉快地使用自定义委托类型和通用编写事件Action委托类型 没有真正考虑我在做什么 我有一些很好的扩展助手Action and EventHandler这使我倾向于使用那些预定义的委托类型而不是我自己的委托类型 但除此之外 除了惯例
  • 具有多个谓词的 C++11 算法

    功能如std find if来自algorithmheader 确实很有用 但对我来说 一个严重的限制是我只能为每次调用使用 1 个谓词count if 例如给定一个像这样的容器std vector我想同时应用相同的迭代find if 多个
  • 在 Mac OS X 上安装 libxml2 时出现问题

    我正在尝试在我的 Mac 操作系统 10 6 4 上安装 libxml2 我实际上正在尝试在 Python 中运行 Scrapy 脚本 这需要我安装 Twisted Zope 现在还需要安装 libxml2 我已经下载了最新版本 2 7 7
  • 如何查明 .exe 是否正在 C++ 中运行?

    给定进程名称 例如 程序 exe C 标准库没有这样的支持 您需要一个操作系统 API 来执行此操作 如果这是 Windows 那么您将使用 CreateToolhelp32Snapshot 然后使用 Process32First 和 Pr
  • DataGridView 列中的数字文本框

    我有一个DataGridView 我想要它的第一列或任何所需的列 其中有textboxes在其中 成为NUMERIC ONLY 我目前正在使用这段代码 private void dataGridViewItems EditingContro
  • 以下 PLINQ 代码没有改进

    我没有看到使用以下代码的处理速度有任何改进 IEnumerable
  • 如何在新窗口中打开图像或pdf文件?

    我有一个 gridview 它包含文件名和文件路径 图像和 pdf 格式文件 其中我使用了模板字段 在该字段下放置了 1 个图像按钮 单击该图像按钮 即 查看 按钮 时 我想在新窗口中打开所选文件 这是我的代码 protected void
  • 将 2 个字节转换为整数

    我收到一个 2 个字节的端口号 最低有效字节在前 我想将其转换为整数 以便我可以使用它 我做了这个 char buf 2 Where the received bytes are char port 2 port 0 buf 1 port
  • 如何在 EF Core 2.1 中定义外键关系

    我的 DAL 使用 EF Core 2 1 这就是我的模型的样子 一名用户只能拥有一种角色 Role entity kind of master public class Role public int RoleId get set pub
  • 使用 Unity 在 C# 中发送 http 请求

    如何使用 Unity 在 C 中发送 HTTP GET 和 POST 请求 我想要的是 在post请求中发送json数据 我使用Unity序列化器 所以不需要 新的 我只想在发布数据中传递一个字符串并且能够 将 ContentType 设置
  • 在 Qt 中播放通知(频率 x)声音 - 最简单的方法?

    Qt 5 1 或更高版本 我需要播放频率为 x 的通知声音 n 毫秒 如果我能像这样组合音调那就太好了 1000Hz 持续 2 秒 然后 3000Hz 持续 1 秒 最简单的方法是使用文件 WAV MP3 例如如此处所述 如何用Qt播放声音
  • 将日期时间显示为 MM/dd/yyyy HH:mm 格式 C#

    在数据库中 日期时间以 MM dd yyyy HH mm ss 格式存储 但是 我想以 MM dd yyyy HH mm 格式显示日期时间 我通过使用 String Format 进行了尝试 txtCampaignStartDate Tex
  • 如何调用与现有方法同名的扩展方法? [复制]

    这个问题在这里已经有答案了 我有这样的代码 public class TestA public string ColA get set public string ColB get set public string ColC get se
  • 时间:2019-03-17 标签:c#TimerStopConfusion

    我想通过单击按钮时更改文本颜色来将文本框文本设置为 闪烁 我可以让文本按照我想要的方式闪烁 但我希望它在闪烁几次后停止 我不知道如何在计时器触发几次后让它停止 这是我的代码 public Form1 InitializeComponent
  • 与 Entity Framework Core 2.0 的一对零关系

    我正在使用 C 和 NET Framework 4 7 将 Entity Framework 6 1 3 Code First 库迁移到 Entity Framework Core 我一直在用 Google 搜索 Entity Framew
  • 当 Verb="runas" 时设置 ProcessStartInfo.EnvironmentVariables

    我正在开发一个 C 应用程序 我需要创建变量并将其传递给新进程 我正在使用ProcessStartInfo EnvironmentVariables 新进程必须提升运行 因此我使用 Verb runas var startInfo new
  • 初始化列表在 VC10 中不起作用

    我在 VC 2010 中编写了这个程序 class class1 public class1 initializer list
  • MSVC编译器下使用最大成员初始化联合

    我正在尝试初始化一个LARGE INTEGER在 C 库中为 0 确切地说是 C 03 以前 初始化是 static LARGE INTEGER freq 0 在 MinGW 下它产生了一个警告 缺少成员 LARGE INTEGER Hig
  • Unity,c++ 本机插件字节数组不匹配

    在我的 C 本机插件中 我有一个调用 vector
  • 如何在c中断言两个类型相等?

    在 C 中如何断言两种类型相等 在 C 中 我会使用 std is same 但搜索 StackOverflow 和其他地方似乎只能给出 C 和 C 的结果 在C中没有办法做到这一点吗 请注意 这不是询问变量是否具有某种类型 而是询问两个类

随机推荐

  • 如何以编程方式创建给定网站的屏幕截图?

    我希望能够创建给定网站的屏幕截图 但该网站可能大于屏幕上可以查看的大小 我有办法做到这一点吗 目标是在 WinForms 应用程序中使用 C 中的 NET 来完成此操作 有一些工具 问题是 您需要在某个给定的程序中渲染它 并拍摄它的快照 我
  • Eclipse 选项卡损坏了如何修复?

    我刚刚下载了 eclipse 但它显示的语言是错误的 我该如何解决这个问题 这是由 Windows 中的字体设置引起的 它描述于thisEclipse 错误报告 由于不是 Eclipse 错误而关闭 您应该能够在 Eclipse 中通过更改
  • CakePHP 中的模型可以有多个表吗?

    CakePHP 中的模型可以有多个表吗 从说明书上这句话猜测 模型通常是数据库的访问点 更具体地说 是数据库中某个表的访问点 默认情况下 每个模型都使用其名称的复数形式的表 即 User 模型使用 users 表 我不这么认为 但你可以建立
  • PHP 中参数类型可以特化吗

    假设我们有以下两个类 abstract class Foo public abstract function run TypeA object class Bar extends Foo public function run TypeB
  • 如何自动缩放字体大小以适应 div 的内容?

    我有一个带有一些文本的 div div style width 50px With some text in it div 如何缩放文本的字体大小以使所有文本都可见 反之亦然 您可以将文本包装在内部 DIV 中 并使用 JavaScript
  • 有关 Azure 实例分配带宽的问题

    我从 Azure 了解到一些事实 每个实例的带宽有限 例如 Extra Small 实例有 5Mb s 我们只支付出站带宽 入站免费 同一个数据中心 流量免费 即使对于小实例 我检查了网络接口 连接速度为10G 因此分配的带宽始终低于网络接
  • 使用通知模式进行域验证

    从历史上看 我在对象的构造函数中对对象进行了验证 并在验证失败时抛出异常 例如 class Name const MIN LENGTH 1 const MAX LENGTH 120 private value public function
  • Idris:是否可以使用“with”重写所有函数以使用“case”而不是“with”?如果不是,能举个反例吗?

    在 Idris 中 是否可以使用 重写所有函数 with 使用 case 而不是 with 如果不是 能举个反例吗 不可能 当你模式匹配时with 上下文中的类型将使用从匹配的构造函数中提取的信息进行更新 case不会导致此类更新 例如 以
  • Ninject 3 InRequestScope 未针对同一请求返回同一实例

    最近 我将我的一个 MVC3 项目从 Ninject 2 升级到 Ninject 3 经过几分钟尝试找出 InRequestScope 不再可用的原因 我发现它现在是 Ninject Web Common 的扩展 现在 当我尝试运行应用程序
  • Java中如何比较字符串和枚举类型?

    我有美国所有州的枚举列表 如下所示 public enum State AL AK AZ AR WY 在我的测试文件中 我将从包含状态的文本文件中读取输入 由于它们是字符串 我如何将它与枚举列表的值进行比较 以便为我设置的变量赋值 priv
  • 如何防止此错误:警告:mysql_fetch_assoc() 期望参数 1 为资源,布尔值在...第 11 行给出[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 错误 mysql fetch array 期望参数 1 为资源 给定布尔值 我对这个错误感到非常困惑 当我尝试从不存在的数据库返回结果时它会显示 我尝试过mysql num rows 但它返回
  • 在 Fortran 中强制将 Intent(in) 声明的变量作为常量,也在被调用的子例程/函数中执行

    在子例程或函数中 可以使用intent in 定义输入变量 并且编译器确保在子例程内该变量不能被更改 一旦变量被传递 通过引用 到另一个子例程 该子例程就能够更改变量而不会出现编译器警告 这是用 gfortran 测试的 代码如下 prog
  • java 中的 System.exit(0)

    我正在使用 swing 编写一个应用程序 我需要通过单击退出应用程序JButton为此我可以使用System exit 或者我应该使用其他一些方法 这是最佳实践 如果打电话System exit 不是最佳实践 然后告诉原因并告诉退出应用程序
  • 这里的文档和双反斜杠

    如果我在包含多个反斜杠 的 shell 脚本中使用此处文档 则 shell 会将其转换为单个反斜杠 我可以在不更改文本的情况下解决这个问题吗 cat lt
  • Spark:线程“主”org.apache.spark.sql.catalyst.errors.package中出现异常

    运行我的 Spark submit 代码时 我在执行时收到此错误 执行连接的 Scala 文件 我只是想知道这个 TreeNodeException 错误是什么 为什么我们会出现这个错误 请分享您对此 TreeNodeException 错
  • 将 dll 文件添加到 C# 项目

    这是一个初学者的问题 但是 项目文件中包含的 dll 引用和 dll 的图像 http a3 vox com 6a00c2251e5b66549d00e398ca81eb0003 pi 如果您查看上图 会发现 Bass Net dll 添加
  • 使用 Cordova/jQuery-mobile 在外部设备浏览器中打开链接

    我的应用程序中有很多链接 我添加了rel external target blank 对他们所有人 在 Ripple 模拟器或常规桌面浏览器中 这效果很好 但在我的 Android JB 4 2 2 上 它会在同一窗口中打开链接 点击 返回
  • Python 和 Windows 命名管道

    从 Python 与 Windows 上的命名管道进行通信的正确方法是什么 我用谷歌搜索了一下 找不到任何包装此通信的包 有 关于如何使用 pywin32 执行此操作的一些描述 不过 我找不到如何使用它连接到现有管道 这个包 https p
  • 如何从 C++ 容器中获取随机元素?

    从 STL 范围中获取 伪 随机元素的好方法是什么 我能想到的最好的办法就是std random shuffle c begin c end 然后从中取出我的随机元素c begin 但是 我可能想要一个随机元素const容器 否则我可能不想
  • 键盘焦点移至 DataGrid

    我有一个 WPF DataGrid 想要将焦点设置到第一个项目 以便用户在第一次打开对话框时可以使用键盘在项目列表中导航 使用 datagrid Focus 我可以将焦点设置到 DataGrid 但这显然不是键盘焦点 因为当我按向下箭头键时