为了账号安全,请及时绑定邮箱和手机立即绑定

如何使自义的一个控件内的一个控件显示在这个控件的外面。

如何使自义的一个控件内的一个控件显示在这个控件的外面。

C#
慕哥9229398 2018-12-25 12:08:49
想对一个控件进行扩展,不知道如何才能在这个控件内定义的控件显示在这个控件的外面。。
查看完整描述

2 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

猜测你是在问WinForm下面的自定义控件吧?

WinForm下的一个控件,对应一个Win32的Window Handle,它们有严格的父子关系。子Window会被父Window裁剪。因此,你不可能让一个控件画出他的父控件。

对于大多数.NET Control(Form也是一个Control),都有Paint事件,你可以挂接这个事件,在其它控件的上进行绘画。比如,你可以通过FindForm方法,找到当前控件所在Form,然后,挂接Paint事件,在Form上画东西。看起来就像是你画出了自己的父一样。

如果你想画出Form,你就只有再开一个Form,把所有的边框统统去掉,设置TransparentKey为窗口的背景色。然后在上面绘画。看起来就像画到Form外面去了。但是,这些新画上去的东西可能会影响你的鼠标和键盘消息。解决这些问题,就需要更高级的实现了。就不多说了。


查看完整回答
反对 回复 2018-12-29
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

问的好,答案是再做一个控件。。。

查看完整回答
反对 回复 2018-12-29
  • 2 回答
  • 0 关注
  • 531 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信