【问题标题】:C# UWP disable phone keyboard for textbox or whole pageC# UWP 禁用文本框或整个页面的手机键盘
【发布时间】:2016-06-16 21:21:28
【问题描述】:

我有 2 个文本框。我制作了自己的键盘,因此用户可以使用我的键盘及其 etrxa 按钮。但是当我点击文本框输入它时,我的手机模拟器上的手机键盘会弹出。我试过“PreventKeyboardDisplayOnProgrammaticFocus” 但我读到它只是在程序本身选择一个文本框时禁用它。

我读到 InputPane 可以帮助我禁用它,但我不明白如何使用它,也找不到其他任何地方的方法。

谁能帮我,我只想禁用特定文本框或整个页面的键盘,这样当我点击文本框时它不会弹出。

更新:好吧,经过深思熟虑后,我设法为我的应用程序做这件事,我设置了两个文本框 xaml

    <TextBox IsReadOnly="True" />

所以现在键盘不会出现在那个文本框上,因为我“不想正确”然后我的按钮取决于 2 个标志,这些标志表明 TextBox 是集中的,它们会在那里显示。但是,如果有人知道如何完全禁用键盘,它可能会有所帮助,如果我在 android 上没记错的话,那么这个文本框有禁用键盘之类的东西。

【问题讨论】:

标签: c# keyboard win-universal-app windows-10-mobile


【解决方案1】:

您可以使用 TextBox.PreventKeyboardDisplayOnProgrammaticFocus 属性,但您还需要将文本框的焦点更改为 Programmatic。

一个简单的例子是:

<TextBox x:Name="myTextBox" PreventKeyboardDisplayOnProgrammaticFocus="True"/>

public MainPage()
{
    this.InitializeComponent();
    timer = new DispatcherTimer();
    timer.Interval = TimeSpan.FromMilliseconds(500);
    timer.Tick += delegate
    {
        try
        {
            myTextBox.Focus(FocusState.Programmatic);
            timer.Stop();
        }
        catch { }
    };
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多