2015-04-29 5 views
1

У меня есть приложение с родительским окном и возможность вывести из него несколько немодуальных окон.Окно ярлыка родительского окна ворует вход от модельного ребенка

В одном из этих немощных окон есть текстовое поле.

При вводе текстового поля я хочу, чтобы иметь возможность удалять CTRL + A, чтобы выбрать весь текст.

Однако в моем родительском окне есть пункт меню, который указывает CTRL + A как его ярлык (он делает его собственный выбор - все виды вещей).

В событии KeyDown в текстовом поле modess/control/form я никогда не вижу CTRL + A. Короче говоря, он украден родительским окном. Я хочу переопределить его, чтобы сделать что-то другое в немодальном окне. Кроме того, я хочу переопределить его, чтобы ничего не делать. Если возможно, как мне это сделать?

+3

Это приложение WinForms? –

+0

Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

+0

Почему бы вам не изменить код/​​функциональность, чтобы формы всплывали как модальные .. есть ли причина для этого не делать. В противном случае вы могли бы создать некоторые обработчики событий делегата .. просто мысль .. – MethodMan

ответ

0

Вариант 1 (Quick & Dirty): В WinForm или WPF создайте eventlistener для keydown. В фоновым кодом

private void textBox1_keyDown(object sender, KeyEventArgs e) 
{ 
    if (e.Control & e.KeyCode == Keys.A) 
    { 
     textBox1.SelectAll(); 
    } 
} 

Вариант 2: Наследуйте текстовое поле и переопределить OnPreviewKeyDown

 Смежные вопросы

  • Нет связанных вопросов^_^