我正在制作一个WPF桌面应用程序,我需要在带有行和列的堆栈面板中显示15,000个元素,我有4个元素声明如下:
public class PasaImagen
{
public string imagenbindeada { get; set; }
public int TiempoDeVida { get; set; }
//public int Cantidad { get; set; }
}
if (imagenrandom1 == 1)
{
//string consecutivas = "/foto" + imagenrandom1.ToString() + ".png";
items1[i].Add(new PasaImagen { imagenbindeada = "/pasto.png", TiempoDeVida=TiempoDeVidaPasto });
matriz1[j, i] = "pasto";
listapocicionesdematriz1.Add(i.ToString() + " , " + j.ToString());
}
if (imagenrandom1 == 2)
{
//string consecutivas = "/foto" + imagenrandom1.ToString() + ".png";
items1[i].Add(new PasaImagen { imagenbindeada = "/conejo.png", TiempoDeVida=TiempoDeVidaConejo });
matriz1[j, i] = "conejo";
listapocicionesdematriz1.Add(i.ToString() + " , " + j.ToString());
}
if (imagenrandom1 == 3)
{
//string consecutivas = "/foto" + imagenrandom1.ToString() + ".png";
items1[i].Add(new PasaImagen { imagenbindeada = "/lobo.png", TiempoDeVida=TiempoDeVidaLobo });
matriz1[j, i] = "lobo";
listapocicionesdematriz1.Add(i.ToString() + " , " + j.ToString());
}
if (imagenrandom1 == 4)
{
items1[i].Add(new PasaImagen { imagenbindeada = "/tierra.png" ,TiempoDeVida=TiempoDeVidaTierra });
matriz1[j, i] = "tierra";
listapocicionesdematriz1.Add(i.ToString() + " , " + j.ToString());
}
真正的问题是当我必须在stackpanel中显示它们时,当我使用1,000个元素时,我对它们没有任何问题,它们在一个循环中不断地在一个单元格之间移动,没有问题,但是我使用了6,000个元素,应用程序的性能非常慢,而且它们的运动变得非常慢而且很差。
问题是,我如何转换Uri图像或图像,以便更容易阅读程序,并在执行时显示项目时获得更好的性能?