我正在尝试用图片替换随机数。例如,如果随机数为1,则显示图片black.jpg:
Cache[diceKey] = r.Next(1, 5); // random (1-4)
if (r.Next(1, 2) == 1 )
image.BackImageUrl = "Images/black.png";
如果随机数为1,有什么解决方案可以显示我的图片吗?
答案 0 :(得分:6)
将图片网址存储在数组中。生成随机索引以访问图像:
string[] imageUrls = new [] { "foo.png", "bar.png", "foobar.png" };
// ...
Random r = new Random();
image.BackImageUrl = imageUrls[r.Next(imageUrls.Length)];
更新(但仍未解决问题)
如果生成的随机数为1,则仅设置特定图像:
int i = r.Next(1, 5); // random (1-4)
Cache[diceKey] = i;
if (i == 1)
{
image.BackImageUrl = "Images/black.png";
}
答案 1 :(得分:2)
正如我在评论r.Next(1, 2)
中已经说过的那样总是会返回1,所以你总是会显示黑色图片......
我认为您应该将代码更改为:
var randomValue = r.Next(1, 5); // random (1-4)
Cache[diceKey] = randomValue;
if (randomValue == 1)
image.BackImageUrl = "Images/black.png";
else
image.BackImageUrl = "";