首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何专注于AutoCompleteBox

如何专注于AutoCompleteBox
EN

Stack Overflow用户
提问于 2018-08-01 15:35:11
回答 1查看 147关注 0票数 0

如何集中精力进入AutoCompleteBox?我已经尝试了许多代码,搜索堆栈,但没有得到关注。这是我写的一些代码。

代码语言:javascript
复制
        <controls:AutoCompleteBox Name="SearchTextBox" IsTextCompletionEnabled="True" SelectedItem="{Binding Code, Mode=TwoWay}" Grid.Column="1" PreviewKeyDown="SearchTextBox_PreviewKeyDown"  >
            <controls:AutoCompleteBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Text="{Binding Code}"/>
                        <TextBlock Text="{Binding Name}"/>
                    </StackPanel>
                </DataTemplate>
            </controls:AutoCompleteBox.ItemTemplate>
        </controls:AutoCompleteBox>

为了聚焦,我创建了一个名为FocusableAutoCompleteBox的类

代码语言:javascript
复制
public class FocusableAutoCompleteBox : AutoCompleteBox
    {
        public new void Focus()
        {
            var textbox = Template.FindName("SearchTextBox", this) as AutoCompleteBox;
            if (textbox != null) textbox.Focus();
        }
    }

并专注于

代码语言:javascript
复制
new FocusableAutoCompleteBox().Focus();

但错误会出现

对象引用未设置为对象实例

我也尝试过SearchTextBox.Focus();,但没有得到结果。

EN

回答 1

Stack Overflow用户

发布于 2018-08-01 15:58:38

这对我有用。

代码语言:javascript
复制
Keyboard.Focus(SearchTextBox);
                SearchTextBox.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51637268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档