将具有不透明度的表单放在具有datagridview winform的主窗体上

时间:2010-08-05 17:23:50

标签: c# winforms opacity

我有一个表格(名为mainForm.cs),上面有数据网格视图。

我必须在datagrdiview上显示图片(具有不透明度)。为了实现这一点,我使用了一个图片框创建了另一个表单(frmPicture),并将opacity属性应用于表单。当鼠标离开窗体时,它还设置opacity = 100(frmPicture),当鼠标离开窗体时,opacity = 30。我们需要在点击时调整大小。

问题是当我最小化mainForm时,另一种形式仍然存在。

我必须找到Visual Studios在方法出现在列表中时的方式(键入点后)并按Control键更改列表的不透明度。

我希望有人可以帮助我。

提前致谢。

最好的问候。

2 个答案:

答案 0 :(得分:1)

如果您将主窗体设置为要叠加的窗体的所有者,它将使用主窗体最小化,即

     OverlayForm form = new OverlayForm();
     form.Show(this);

答案 1 :(得分:0)

我敢打赌VS使用ContextMenu或新的ContextMenuStrip,而不是另一种形式....

编辑 - 删除了错误的建议

但是,对于您现在面临的情况,我会使用Form的Deactivate()事件,并在该事件处理程序中隐藏您的其他表单。这样,当你的表格像VS一样失焦时它会隐藏起来。