我想在瓷砖上创建一个带有动画的Checkers Board。
为此,我创建了一个矩形WPF UserControl来表示图块。
在瓷砖顶部我正在使用带有红色/黑色图片的PictureBox。
在创建和添加图块时,在PictureBoxes之后我无法看到PictureBox,因为它们位于图块后面。 (如果我颠倒了创建和添加元素的顺序,我看到了瓷砖上方的图片,但PictureBoxes的透明背景向我显示了它的形式背景,忽略了它下方的UserControl。
为了更好的解释,我附上了一张照片(我将表单的背景设置为绿色以便更好地理解)
这里也是我认为相关的代码部分
WPF UserControl(名为UserControlCell)Xaml
20
每个瓷砖都以这种方式处理
<Grid>
<Rectangle Fill="White" HorizontalAlignment="Left" Height="50" Width="50"
VerticalAlignment="Top" Name="myRect"/>
</Grid>
和每个PictureBox
ElementHost eh = new ElementHost();
UserControlCell square = new UserControlCell ;
square.Size = new Size(someWidth, someHeight);
eh.Size = new Size(someWidth, someHeight);
eh.Location = new System.Drawing.Point(xCoordinate,yCoordinate);
if ((i + j) % 2 == 0)
square.BackColor = System.Drawing.Color.Black;
else
square.BackColor = System.Drawing.Color.White;
eh.BackColor = Color.Transparent;
eh.Child = square;
Controls.Add(eh);
可能是什么问题导致图片框认为它的背景是形式而不是瓷砖(或者为什么以相反的顺序添加它们使我根本看不到PictureBoxes)