2014-11-24 118 views
2

我有一个表格MainForm它继承DockContent,甚至注册表单初始化中的mousedown和keypress事件。 但是这些事件都没有被触发,真的不知道可能是什么原因。mousedown事件不触发在C#中的dockpanel套件#

下面是代码:

using WeifenLuo.WinFormsUI.Docking; 
public partial class MainForm : DockContent 
{ 

    InitializeComponent();   
} 

private void InitializeComponent() 
{  
    this.Load += new System.EventHandler(this.MainForm_Load); 
    this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.MainForm_KeyPress); 
    this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.MainForm_KeyUp); 
    this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.MainForm_MouseDown); 
} 


} 

private void MainForm_MouseDown(object sender, MouseEventArgs e) 
{ 
    Copy.Show(Cursor.Position); 
} 

在我想显示上下文菜单项“复制”的形式的权利或左击。但是mousedown事件甚至按键事件不会触发。

+0

有什么消息吗?你读过我更新的答案吗? – giammin 2014-11-27 08:59:43

+0

@giammin - 我真的不知道...为什么..它不捕获mousedown或任何按键事件..我也读你的答案..还是一样...我仍然试图.. – sia 2014-11-27 09:14:06

回答

0

鼠标事件仅适用于顶部控件,因此当顶部有另一个控件时,它们不会为窗体控件触发。

那里你可以找到一些解决办法:

How do I grab events from sub-controls on a user-control in a WinForms App?

反正我创建了一个简单的winform应用程序与您的代码,一切工作正常,所以你必须肯定的东西正在吞噬你所有的活动

using System.Windows.Forms; 
using WeifenLuo.WinFormsUI.Docking; 

namespace WindowsFormsApplication2 
{ 
    public partial class Form1 : DockContent 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
      label1.Text = "init"; 
      KeyPress += MainForm_KeyPress; 
      KeyUp += MainForm_KeyUp; 
      MouseDown += MainForm_MouseDown; 
     } 
     private void MainForm_MouseDown(object sender, MouseEventArgs e) 
     { 
      label1.Text = "MainForm_MouseDown"; 
     } 
     private void MainForm_KeyUp(object sender, KeyEventArgs e) 
     { 
      label1.Text = "MainForm_KeyUp"; 
     } 
     private void MainForm_KeyPress(object sender, KeyPressEventArgs e) 
     { 
      label1.Text = "MainForm_KeyUp"; 
     } 
    } 
} 
+0

任何其他工作? – sia 2014-11-24 08:53:32

+0

@sia http://stackoverflow.com/questions/163104/how-do-i-grab-events-from-sub-controls-on-a-user-control-in-a-winforms-app – giammin 2014-11-24 09:00:14

+0

以上试过..仍然事件根本不会触发.. – sia 2014-11-24 10:16:24