Как набрать и пометить табуляции в текстовом поле управления C#

Мне нужно ввести текст для вставки в базу данных MySQL, этот текст всегда содержит табуляцию, например "/t". Когда я набираю клавишу Tab, другой элемент управления в той же форме получает фокус. Там есть способ отключить это поведение программно. на языке C#, чтобы я мог пометить табуляцию внутри текста Спасибо.

3 ответа

Решение

Я полагаю, что вам необходимо выполнить это в приложении WindowsForms, чтобы реализовать в вашей форме следующий метод:

    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);
    }

Проверьте следующее решение http://www.geekzilla.co.uk/ViewA94BBC8A-8DC4-4F14-98F9-DEDFCF40DA07.htm

Хотя это только для IE, но это даст вам представление о том, что вы должны делать

Вы можете использовать JavaScript для этого

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

вот также больше информации об этом:

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

Другие вопросы по тегам