我正在创建一个Mancala游戏。我在网格中有一个画布,在画布中有代表孔的圆和代表Mancalas的矩形,还有代表石头的图像。我已经使用图像控件来获取图像。
图像在圆圈中。它们具有ZIndex -2,所以它们在圆圈下面是正确的,并且圆圈是透明的,因此您可以看到。
我想使圆以某种方式可单击(我知道形状中没有单击事件,但是在另一个类似于单击的事件就足够了)。然后该圆圈下方的图片将移到下一个圆圈下方的画布上的不同坐标上。
所以我的问题是:有什么办法可以给圈子里的孩子们,以便我可以知道在特定时间那个特定圈子中有多少张图片?任何其他建议将不胜感激。
谢谢
答案 0 :(得分:1)
Shape没有Click
事件,但是您可以处理MouseLeftButtonDown
事件。
它也没有Children
属性,但是您可以通过将Shape
及其“子”元素添加到同一Grid
中来解决问题,例如: / p>
<Grid Background="Transparent" MouseLeftButtonDown="OnMouseLeftButtonDown">
<Ellipse Fill="Red" Width="100" Height="100" />
<Image ... />
</Grid>
private void OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Grid clickedGrid = (Grid)sender;
Ellipse ellipse = clickedGrid.Children[0] as Ellipse;
//...
}