panel继承了自定义控件的MouseDown的事件失败

痴情的路灯 2017-02-12 11:19:59
我在group里面填充了5个panel,这5个panel各自填充了用户自定义控件,
panel继承了自定义控件的MouseDown的事件
可是问题是,我在点panel的时候没有触发MouseDown事件,我新建一个form来做测试,却是可以触发事件
代码如下:

#region 填充用户自定义控件

/// <summary>
/// 填充用户自定义控件
/// </summary>
private void GetUserControls()
{
int locationX = 12;
int locationY = 18;
ms = new MessagesShow[startCount];

for (int i = 0; i < startCount; i++)
{
ms[i] = new MessagesShow();

Panel panel1 = new Panel();
panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
panel1.Location = new System.Drawing.Point(locationX + i * 269, locationY);
panel1.Size = new System.Drawing.Size(269, 680);

panel1.MouseDown += new System.Windows.Forms.MouseEventHandler(ms[i].MessagesShow_MouseDown);
panel1.Controls.Add(ms[i]);
groupBox1.Controls.Add(panel1);
}
}
#endregion


用户组定义控件:

public void MessagesShow_MouseDown(object sender, MouseEventArgs e)
{
MessageBox.Show("Test");
}
...全文
153 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xdashewan 2017-02-13
  • 打赏
  • 举报
回复
这MessagesShow是个什么东西,panel1.Controls.Add(ms[i]);你的panel被这个东西占满了吗,占满了可能点不到panel本身
痴情的路灯 2017-02-13
  • 打赏
  • 举报
回复
引用 1 楼 xdashewan 的回复:
这MessagesShow是个什么东西,panel1.Controls.Add(ms[i]);你的panel被这个东西占满了吗,占满了可能点不到panel本身
1、MessagesShow是用户自定义控件,我忘记加前缀了,sorry,太不规范了我,这个要改 2、panel的大小与自定义控件是一样大的 这么说来估计是因为被沾满了,所以点不到,我去调整一下!

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧