将一系列图像引用添加到数组

时间:2018-09-07 15:57:24

标签: c# .net uwp

我正在使用现有的UWP(通用Windows平台),我有以下代码,

UWP:

<Image x:Name="img1" ... />
.
.
<Image x:Name="img100" ... />

C#:

private BitmapImage empty = new BitmapImage(new Uri(@"C:\\img\empty.png"));

private void Init()
{
    img1.Source = e;
    .
    .
    img100.Source = e;
}

有效。但是我想进行一些重构,因此可以将其放在Image对象的数组中,例如:

var imageInitList = new Image[100];

imageInitList[0] = img1;
.
.
imageInitList[99] = img100;

问题,我该如何在C#中应用psudo? img1 ... img100是图像类型。

for (int i = 0; i < length; i++)
{
    imageInitList[i] = img + i
}

1 个答案:

答案 0 :(得分:1)

在XAML中声明大量Image元素听起来像是一项更适合于代码隐藏文件或GridViewListView之类的布局控件的工作。但是,如果您坚持将声明保留在XAML中,则可以使用FindName方法来查询x:Name

for (int i = 0; i < length; i++)
{
    imageInitList[i] = (Image)FindName($"img{i}");
}

FindName is a method on FrameworkElement,因此您可以在页面的代码隐藏区中调用它,以获取页面中的任何命名元素。