none
Обработчик нажатия клавиши RRS feed

  • Вопрос

  • Здравствуйте!
    Подскажите  пожалуйста почему в случае приведенном ниже не вызывается метод обработчик нажатия button1?

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (e.KeyChar == 13)
                {
                    this.button1.Click+=new EventHandler(button1_Click);
                    MessageBox.Show("Hello");
                }
            }
    • Перемещено I.Vorontsov 25 декабря 2009 г. 18:39 (От:Общие вопросы по студенческим программам Microsoft)
    • Перемещено SachinW 1 октября 2010 г. 21:48 MSDN Forums Consolidation (От:Начинающие разработчики)
    17 октября 2009 г. 11:09

Ответы

  • В своей функции вы добавляете обработчик, но не вызываете его.

    Добавить обработчик необходимо в Form_Load, а в функции написать:

    button1_Click(button1, new EventArgs());
    • Предложено в качестве ответа coshmos 26 октября 2009 г. 14:36
    • Помечено в качестве ответа I.Vorontsov 25 декабря 2009 г. 18:40
    18 октября 2009 г. 10:25

Все ответы

  • В своей функции вы добавляете обработчик, но не вызываете его.

    Добавить обработчик необходимо в Form_Load, а в функции написать:

    button1_Click(button1, new EventArgs());
    • Предложено в качестве ответа coshmos 26 октября 2009 г. 14:36
    • Помечено в качестве ответа I.Vorontsov 25 декабря 2009 г. 18:40
    18 октября 2009 г. 10:25
  • //Попрубуйте так
    using

     

     

    System;
    using System.Windows.Forms;
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
       {
          public Form1()
          {
              InitializeComponent();
          }
          private void button1_KeyPress(object sender, KeyPressEventArgs e)
         {
             this.Text=" = "+ (int)e.KeyChar; 
             if (e.KeyChar == 13) //Ctrl+M
            
    {
                 
    this.button1.Click+=new EventHandler(button1_Click); 
                 MessageBox.Show("Привет из: button1_KeyPress");
             }
          }
          private void button1_Click(object sender, EventArgs e)
          {
              MessageBox.Show("Привет из: button1_Click"); 
          }
       }
    }
    8 января 2010 г. 22:48