使用 MahApps 将焦点设置到 InputDialog 中的输入框

Setting focus to input box in an InputDialog using MahApps

我们基于 MahApps Dialog examples 的 InputDialog 创建了自己的搜索对话框,它确实有效,但有两个问题:

  1. 打开时它不会自动聚焦在搜索字段中,因此您必须在开始键入搜索之前单击它
  2. 如果可能,我们希望自动select列表中的第一个条目,这样您就不需要先select列表中的条目,然后点击确定按钮

你能帮忙解决其中一个问题吗?第一个是最重要的,因为用户在注意到焦点不在搜索字段中之前经常开始键入。

在提供一些代码摘录以获得帮助时,这基本上是我在问题中提供的示例 link 中的 copy-and-paste,我发现 [=20] 之间存在依赖关系=] 对话框的名称和标题。

<dialogs:BaseMetroDialog x:Class="Some.Path.Dialogs.SearchDialog"
  ...
  d:DesignHeight="500" d:DesignWidth="800" 
  Title="SearchDialog" Background="White">
  ...
</dialogs:BaseMetroDialog>

Title 匹配 Class 的最后一部分时,焦点设置正确。关于 auto-select,原来与 Metro.MahApps 接口无关,而只是内部代码,我找到了一个入口点,听起来很有希望实现我的目标。