C# 递减计数器不工作

C# 递减计数器不工作,c#,image,grid,C#,Image,Grid,我正在尝试使用我在创建多个图像时使用的数组制作计数器,经过一定时间后,如果不单击图像,该图像将消失,我对C#是新手,我非常困惑。我想大部分时间我都有,但它似乎不起作用,谢谢。在代码中,我包含了使用此数组的两个方法,CreateImage()创建“Mole”图像,然后将其添加到网格上的随机点,以及deleteMole(),我尝试在4秒后删除此Mole 代码: private void ChangeImage() { string Moleimage = TUtils.GetIniFileS

我正在尝试使用我在创建多个图像时使用的数组制作计数器,经过一定时间后,如果不单击图像,该图像将消失,我对C#是新手,我非常困惑。我想大部分时间我都有,但它似乎不起作用,谢谢。在代码中,我包含了使用此数组的两个方法,CreateImage()创建“Mole”图像,然后将其添加到网格上的随机点,以及deleteMole(),我尝试在4秒后删除此Mole

代码:

private void ChangeImage()
{
    string Moleimage = TUtils.GetIniFileString(Moleini, "ImagePath", "PictureFile", Root + "mole2.png");
    NumofImages = TUtils.GetIniInt(Moleini, "NumPictures", "pictures", 8);
    String MoleImageFunction = TUtils.GetIniFileString(Moleini, "ImagePath", "PictureFile", Root + "mole2.png");

    for (int j = 0; j > NumofImages; j++)
    {
        ListArray[j]++;
    }
    Image newImage = HoleImage();

    molePopup = MoleImage();

    int numCol = Convert.ToInt32(NumberOfColumns);

    int ranCol = randomColumns.Next(1, numCol);

    int ranRow = randomRow.Next(1, NumberofRows);


    Image mole = new Image();
    //for (int i = 0; i < NumofImages; i++)
    //{

    mole.Source = new BitmapImage(new Uri(MoleImageFunction));
    mole.Name = "Mole" + ListArray;
    mole.Width = ImageSize;
    mole.Height = ImageHeight;
    //}

    Grid.SetColumn(mole, ranCol);
    Grid.SetRow(mole, ranRow);
    grid_Main.Children.Add(mole);

    //Calling MoileLifeCounter for Mole Death
    moleLifeCounter();

    mole.MouseUp += new MouseButtonEventHandler((o, e) =>
    {
        grid_Main.Children.Remove(mole);
        MolePoints++;
    });
}

private void deleteMole()
{
    NumofImages = TUtils.GetIniInt(Moleini, "NumPictures", "pictures", 8);
    int NumberofImages;
    NumberofImages = Convert.ToInt32(NumofImages);

    for (int j  = 0; j > NumofImages; j++)
    {
        ListArray[j]--;

        if (ListArray[j] == 0)
        {
            int numCol = Convert.ToInt32(NumberOfColumns);

            int ranCol = randomColumns.Next(1, numCol);

            int ranRow = randomRow.Next(1, NumberofRows);

            Image newImage = HoleImage();

            Grid.SetColumn(HoleImage(), ranCol);
            Grid.SetRow(HoleImage(), ranRow);
            grid_Main.Children.Add(HoleImage());

            Console.WriteLine("TIMER WORKED!");
        }
        else
        {
            break;
        }
    }
}
private void ChangeImage()
{
字符串Moleimage=TUtils.GetIniFileString(Moleini,“ImagePath”,“PictureFile”,Root+“mole2.png”);
NumofImages=TUtils.getinint(Moleini,“NumPictures”,“pictures”,8);
字符串MoleImageFunction=TUtils.GetIniFileString(Moleini,“ImagePath”,“PictureFile”,Root+“mole2.png”);
对于(int j=0;j>NumofImages;j++)
{
ListArray[j]++;
}
Image newImage=HoleImage();
molePopup=MoleImage();
int numCol=Convert.ToInt32(NumberOfColumns);
int ranCol=randomColumns.Next(1,numCol);
int ranRow=randomRow.Next(1,NumberofRows);
图像摩尔=新图像();
//对于(int i=0;i
{
主格栅。儿童。移除(鼹鼠);
分子点++;
});
}
私有void deleteMole()
{
NumofImages=TUtils.getinint(Moleini,“NumPictures”,“pictures”,8);
整数图像;
NumberofImages=Convert.ToInt32(NumofImages);
对于(int j=0;j>NumofImages;j++)
{
ListArray[j]--;
if(ListArray[j]==0)
{
int numCol=Convert.ToInt32(NumberOfColumns);
int ranCol=randomColumns.Next(1,numCol);
int ranRow=randomRow.Next(1,NumberofRows);
Image newImage=HoleImage();
SetColumn(HoleImage(),ranCol);
SetRow(HoleImage(),ranRow);
grid_Main.Children.Add(HoleImage());
控制台。WriteLine(“计时器工作!”);
}
其他的
{
打破
}
}
}

在我看来,计数器从未进入递减循环

for (int j  = 0; j > NumofImages; j++)   // wrong!
应该是

for (int j  = 0; j < NumofImages; j++)
for(int j=0;j
在我看来,计数器从未进入递减循环

for (int j  = 0; j > NumofImages; j++)   // wrong!
应该是

for (int j  = 0; j < NumofImages; j++)
for(int j=0;j
在哪里声明了
ListArray
它是否给出了任何关于问题可能是什么的指示?@emd我在全局“uint[]ListArray;”“@AdamSweeney做了什么给出了任何指示?当您的程序运行时,它是否抛出异常或任何东西…或者根本不起作用。
ListArray
声明在哪里?它是否给出了问题可能是什么的任何指示?@emd我在全局声明ListArray“uint[]ListArray;”@AdamSweeney做了给出任何指示的事情?当您的程序运行时,它是否抛出异常或任何东西…或者根本不起作用。谢谢!但是现在我在“ListArray[j]++;”处得到一个空引用错误。有什么帮助吗?在哪里/在哪一行获得异常?“ChangeImage()中的ListArray[j]+;”那么您是否初始化了数组
ListArray=new uint[100]
?是的,很抱歉,错误来自我的错误编程,谢谢您的回答。:)谢谢但是现在我在“ListArray[j]++;”处得到一个空引用错误。有什么帮助吗?在哪里/在哪一行获得异常?“ChangeImage()中的ListArray[j]+;”那么您是否初始化了数组
ListArray=new uint[100]
?是的,很抱歉,错误来自我的错误编程,谢谢您的回答。:)