我有这张图片,我希望它位于另一张图片之上。
(窗口窗体应用程序,c#)
在代码中,您可以进行一些调用。BringToFront和SendToBack可能是最简单的:
yourControl.BringToFront();
yourControl.SendToBack();
您也可以使用Control.ControlCollection.SetChildIndex从控件的父容器控制它 。例如:
// Bring control to front
MyForm.Controls.SetChildIndex(SomeControl, 0);
否则,只需在设计器中单击“放在前面”或“放在后面”,@KeithS 已经回答了。
如果它是一个控件与另一个控件部分重叠,并且您希望将一个或另一个放在顶部,请在设计器中右键单击您想要放在顶部的图像,然后选择“置于前面”。有一个“Send To Back”,你可以在你想要的图像上使用它。
如果您想要部分透明,例如顶部图像上的 alpha 蒙版或两个图像之间的渐变混合,则可能需要 WPF 图形的更高级功能。您可以在 WinForms 中进行逐像素效果,但 Winforms 中没有内置任何东西来处理图像透明度,并且 Winforms 中图像的逐像素操作不会利用任何图形加速(100% CPU ,运行时的开销会进一步减慢您的速度)。