如何在文本框控件C#中键入和标记制表

时间:2012-12-13 12:24:55

标签: c# winforms textbox focus

我需要输入一个要插入MySQL数据库的文本,这个文本总是包含列表,例如“/ t” 当我键入Tab键时,同一表单中的另一个控件将成为焦点 我有一种方法可以在C#语言中禁用这种行为,所以我可以在文本中标记制表 感谢。

3 个答案:

答案 0 :(得分:2)

我认为您需要在Windows窗体应用程序中完成此操作,以在窗体中实现以下方法:

    protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
    {
        if (keyData == Keys.Tab)
        {
            textBox1.Text += "\t";
            // Set the selection on the end of text.
            textBox1.SelectionStart = textBox1.Text.Length;
            textBox1.ScrollToCaret();
            return true;
        }
        return base.ProcessCmdKey(ref msg, keyData);
    }

答案 1 :(得分:0)

检查以下解决方案http://www.geekzilla.co.uk/ViewA94BBC8A-8DC4-4F14-98F9-DEDFCF40DA07.htm

虽然它仅适用于IE,但它可以让您了解您的目标

答案 2 :(得分:0)

您可以使用javascript进行此操作

    textarea.observe('keydown', function (e) {
  if(e.keyCode==9) {
    e.element().insert("\t");
    e.stop();
  }
}

这里还有关于它的更多信息:

http://ajaxian.com/archives/handling-tabs-in-textareas