gpt4 book ai didi

c# - 将 TAB 空格插入 TextBox

转载 作者:行者123 更新时间:2023-11-30 22:21:27 27 4
gpt4 key购买 nike

我在网上看到很少有教程声称可以解决这个问题,但它们不起作用。我想在按下 TAB 键时插入一个 TAB 空格到我的 多行 文本框中。

Microsoft 的一个回复是,根据设计,如果您在 TextBox 中按 TAB 键,Metro 应用程序会将焦点带到下一个控件。现在,如果您在单行文本框上按 TAB 键,这就有意义了。但是在多行 TextBox 中?您不认为用户更有可能想要插入 TAB 吗?

是的,我知道,您可以通过按 Ctrl+TAB 在 Metro TextBox 中插入一个 TAB 空格。但这很容易出错,因为我们大多数人都习惯于只按 TAB 键,而老习惯有时很难改掉。

这是我的问题。我的应用程序有一个文本编辑器功能,用户可能需要在其中输入大量数据。而且您知道人们喜欢什么,他们喜欢将内容分开以使他们的文本文档更具可读性,并且使用 Ctrl+TAB 非常不舒服且更乏味。所以我想知道是否有人可以帮助解决这个问题(虽然它不能涉及 RichTextBox)?

此外,如果我设法找到解决方法,这会增加我的应用发布被商店拒绝的可能性吗?

最佳答案

订阅 TextBox 的 KeyPress 事件,通过检查按下键的 KeyCode 捕获 Tab 键,然后将 KeyEventArgs 的 Handled 属性设置为 true,这样该键就不会传递到任何其他控件。

使用 SendKeys 将“Tab”字符发送到 TextBox 以模仿按“Ctrl+Tab”的行为,如您所说:

TextBox_KeyPress(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == Keys.Tab)
{
e.Handled = true;
SendKeys(^{TAB});
}
}

胡萝卜 (^) 代表 CTRL 键。

关于c# - 将 TAB 空格插入 TextBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14362563/

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