我想让图像部分覆盖一个winform控件(在这种情况下是一个datagridview),但它似乎不像我想的那样工作。 我按照找到here的答案,当父母是控件(DGV)时它可以正常工作,但是当父母是表格时却没有... 我想要这样的东西:
答案 0 :(得分:2)
您可以使用两个 PictureBoxes
并将一个 DGV
以及嵌套另一个。然后将叠加层移动到正确的位置..
两者应该相同,即具有相同的Image
和相同的SizeMode
。
这是一个可以执行此操作的功能:
void overlayCtls(Control ctlBase, Control ctlOverlay, Control ctlTgt )
{
ctlOverlay.BackColor = Color.Transparent;
ctlOverlay.Parent = ctlTgt;
ctlOverlay.Location = new Point(ctlBase.Left - ctlTgt.Left, ctlBase.Top - ctlTgt.Top);
}
结果:
注意:
ClientArea
的{{1}},还会覆盖任何Parent
。