C# 动态创建图像
我有一个问题,而使打击一个鼹鼠类型的游戏,我试图创造的形象,鼹鼠将出现动态,但只有一个空白的白色屏幕上的堆栈面板是。公平地说,我是个笨蛋 这是我尝试创建这些图像的循环:C# 动态创建图像,c#,wpf,image,C#,Wpf,Image,我有一个问题,而使打击一个鼹鼠类型的游戏,我试图创造的形象,鼹鼠将出现动态,但只有一个空白的白色屏幕上的堆栈面板是。公平地说,我是个笨蛋 这是我尝试创建这些图像的循环: Image[] ImageArray = new Image[50]; InitializeComponent(); //string ImageName = "Image"; for (int i = 0; i <= 8; i++) {
Image[] ImageArray = new Image[50];
InitializeComponent();
//string ImageName = "Image";
for (int i = 0; i <= 8; i++)
{
Image Image = new Image();
ImageArray[i] = Image;
Image.Name = "Image" + i.ToString();
StackPanel1.Children.Add(ImageArray[i]);
}
//Random Number Generator
Random rnd = new Random();
int num = rnd.Next(1, 9);
//If Random Number is "1" Then Image will display
if (num == 1)
{
ImageSource MoleImage = new BitmapImage(new Uri(ImgNameMole));
ImageArray[1].Source = MoleImage;
}
Image[]ImageArray=新图像[50];
初始化组件();
//字符串ImageName=“Image”;
对于(int i=0;i,据我所知,您正在创建一个类型为Image
的新对象,但是Image
实际上没有任何可显示的内容。您需要设置图像的源代码
正如汤森所指出的,你可能应该为你的图像创建一个样式
,在那里你可以设置诸如高度
,宽度
等公共属性。据我所知,你正在创建一个类型为图像
的新对象,但是图像
确实没有任何东西可以显示需要设置图像的源代码
正如汤森指出的,您可能应该为您的图像创建样式
,您可以在其中设置常见属性,例如高度
、宽度
等。我的猜测是,由于您正在将项目添加到堆栈面板
,因此堆栈面板
正在为高度和宽度选择默认的分钟数图像上的宽度(可能为0),这就是为什么您没有看到任何东西
尝试为图像的高度和宽度设置一个值,然后查看是否显示任何内容
另外,正如Tejas指出的,您没有设置图像源
编辑:按如下方式设置图像宽度:
Image myImage = new Image();
myImage.Width = 25;
myImage.Height = 25;
在您第一次创建图像的for循环中执行类似操作。我的猜测是,由于您正在将项目添加到StackPanel
,因此StackPanel
会选择图像上高度和宽度的默认分钟数(可能为0),这就是您没有看到任何内容的原因
尝试为图像的高度和宽度设置一个值,然后查看是否显示任何内容
另外,正如Tejas指出的,您没有设置图像源
编辑:按如下方式设置图像宽度:
Image myImage = new Image();
myImage.Width = 25;
myImage.Height = 25;
在您第一次创建图像的for循环中执行类似操作。doh,我也完全忽略了这一部分:p稍后在程序中,我需要更新我的答案。我给ImageArray一个值,我将编辑我的问题。那么,您的Uri
可能有问题吗?请尝试指定UriKind.RelativeOrAbsolute
在Uri的构造函数中
如果这不能解决问题,请发布您的xaml。我会将xaml添加到问题中:)谢谢您的帮助!你能再发一点吗?这一行不太靠谱。doh,我也完全忽略了这一部分:P我需要更新我的答案稍后在程序中,我给ImageArray一个值,我将编辑我的问题。那么,也许你的Uri有问题?尝试在Uri
的构造函数中指定UriKind.RelativeOrAbsolute
,如果这不能解决问题,请发布您的xaml。我会将xaml添加到问题中:)谢谢您的帮助!你能再发一点吗?这一行没什么可看的。我在XAML中设置了高度和宽度:(我看不出你在XAML中为每个图像设置高度和宽度的位置。你的意思是你为stackpanel设置了高度和宽度吗?哦,是的。我该如何设置图像大小?对不起,我是新手:/哦,老兄,谢谢!我一直在做这个工作!:)没问题。我曾多次被StackPanel使用默认最小值咬过:)我在XAML中设置了高度和宽度:(我看不出您在xaml中为每个图像设置高度和宽度的位置。您的意思是为stackpanel设置高度和宽度吗?哦,是的。我该如何设置图像大小?抱歉,我是新手:/哦,老兄,谢谢!我一直在做这个工作!:)没问题。我已经被StackPanel使用默认最小值咬了很多次:)imgnamomele的值是多少?此外,此图像是否在您的项目中?imgnamomele的价值是什么?还有,这个图像在你的项目中吗?
Image myImage = new Image();
myImage.Width = 25;
myImage.Height = 25;