В приложении Visual Studio 2008 C# у меня есть элемент управления с помощью кнопки. Я пытаюсь получить событие MouseDown для кнопки (событие определено в классе Control, который наследует Button).
если я пишу это:Событие MouseDown для кнопки
this.button1.MouseDown +=
new System.Windows.Forms.MouseEventHandler(this.Button_MouseDown);
компилирует, но даже не поднимается.
То же самое будет работать для самой всей панели
this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Button_MouseDown);
Почему я не могу получить эту работу событий в производном классе? Есть ли способ заставить его работать?
Это мой метод InitializeComponent():
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// button1
//
this.button1.Location = new System.Drawing.Point(29, 140);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(72, 39);
this.button1.TabIndex = 1;
this.button1.Text = "button1";
this.button1.MouseDown += new System.Windows.Forms.MouseEventHandler(button1_MouseDown);
//
// MopilStatsPanel
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.Controls.Add(this.button1);
this.Name = "MopilStatsPanel";
this.Size = new System.Drawing.Size(286, 337);
this.ResumeLayout(false);
}
Добавить к вопросу. Где вы назначаете обработчики события? – Shaharyar
FYI, 'button1.MouseDown + = Button_MouseDown'. – Will
У вас есть что-то, накладывающееся на эту кнопку, которая может захватить событие? Возможно, другая панель? – BradleyDotNET