我想将用户控件中的不同图像传递给页面。但是,我不确定我是否正确行事。 UserControl中的方法不能在页面中使用。有没有人知道其他任何解决方案?
我正在使用ms visual studio 2012,metro app c#
用户控件:
public static BitmapImage ImageFromRelativePath(FrameworkElement parent, string path)
{
var uri = new Uri(parent.BaseUri, path);
BitmapImage result = new BitmapImage();
result.UriSource = uri;
return result;
}
页:
List<Ghost> ghosts = new List<Ghost>();
ghosts.Add(new Ghost(1) { MazeValues = mazeValues });
ghosts.Add(new Ghost(2) { MazeValues = mazeValues });
ghosts.Add(new Ghost(3) { MazeValues = mazeValues });
ghosts.Add(new Ghost(4) { MazeValues = mazeValues });
答案 0 :(得分:0)
是的,我对此仍然有点不确定,但这是一个镜头:
该页面应该有一个名为“LayoutRoot”的网格。如果没有像这样创建一个:
<Grid x:Name="LayoutRoot">
</Grid>
然后,而不是列表(你可以我们,但有点复杂),做
LayoutRoot.Children.Add(Ghost(1) { MazeValues = mazeValues });
此外,在ghost构造函数中发送参数不是一个好主意,因为它会阻止ghost用户控件在设计模式下显示