gpt4 book ai didi

c# - 如何让TextBox失去焦点?

转载 作者:太空狗 更新时间:2023-10-29 20:46:37 26 4
gpt4 key购买 nike

当用户触摸Enter 虚拟键时,如何使TextBox 失去焦点并隐藏屏幕键盘?

    private void TheName_KeyDown(object sender, KeyRoutedEventArgs e) {
var tb = sender as TextBox;
if (e.Key == Windows.System.VirtualKey.Enter) {
// ... tb.LooseTheFocus_PLEASE(); !???
}
}

最佳答案

    /// <summary>
/// Makes virtual keyboard disappear
/// </summary>
/// <param name="sender"></param>
private void LoseFocus(object sender) {
var control = sender as Control;
var isTabStop = control.IsTabStop;
control.IsTabStop = false;
control.IsEnabled = false;
control.IsEnabled = true;
control.IsTabStop = isTabStop;
}

/// <summary>
/// Makes virtual keyboard disappear when user taps enter key
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void LooseFocusOnEnter(object sender, KeyRoutedEventArgs e) {
if (e.Key == Windows.System.VirtualKey.Enter) {
e.Handled = true; LoseFocus(sender);
}
}

太丑了。但它有效。关键部分是 IsTabStop 属性。如果我不触摸它 - 键盘会消失几分之一秒然后再次出现。

关于c# - 如何让TextBox失去焦点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24251356/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com