前言
以前一直没有做过c/s这块开发,最近一段时间,刚接触。当然winform自己肯定会,但是只是很早以前自己玩的时候弄弄。最近做的时候,很简单的一个效果,自己怎么也实现不出来,最后没事和一个哥们私下弄得时候发现了奥妙,哈哈,可能大家做过winform的都知道,但是还是分享一下。
需求
form窗体上,放一个groupbox控件,放一个datagridview控件,放一个panel控件。groupbox中放一个textbox控件,dock属性为top,panel中放一个日历控件,gridview里面是用来显示数据的,dock属性是fill,然后右击-》置于顶层。点击textbox就是把日历弹出来,选择好时间,输入到文本框中,作为条件,然后让gridview显示数据。重点是把panel放到groupbox和gridview中的时候就会被挡住。如图-1
图-1
这是我在拖动的时候,没有放开鼠标,直接截图的效果,如果把鼠标放开后,如图-2:
图-2
总结
一开始我那个哥们说是gridview和那个groupbox的线没有重合的原因,然后我试试了,重合后。用鼠标拖动结果还是被盖住了,然而我发现了,用方向键控制(前提是panel一开始只在gridview上),就不会有着问题了。其实用鼠标拖动的时候有时候也会出来效果。但是我n拖动都是被盖住了。经过试验后,自己得出的结论是:用方向键制,winform会认为你是放在gridview上面的,如果用鼠标控制,他就不知道你是要放在groupbox上面还是gridview上,所以会出现被覆盖住的现象。分享完了,谢谢。