Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# GetObject()方法过早返回方法_C#_.net_Resourcemanager - Fatal编程技术网

C# GetObject()方法过早返回方法

C# GetObject()方法过早返回方法,c#,.net,resourcemanager,C#,.net,Resourcemanager,我正在编写一个Windows窗体纸牌游戏,在为我的纸牌分配图像时遇到问题。当我调试下面的代码时,该方法似乎在到达GetObject方法时意外返回。我使用这种方法不当吗?如果是,有谁能提供更好的解决方案 private void initCards() { ResourceManager rm = new ResourceManager(typeof(Image)); for (int i = 0; i < 4; i++)

我正在编写一个Windows窗体纸牌游戏,在为我的纸牌分配图像时遇到问题。当我调试下面的代码时,该方法似乎在到达GetObject方法时意外返回。我使用这种方法不当吗?如果是,有谁能提供更好的解决方案

private void initCards()
    {
        ResourceManager rm = new ResourceManager(typeof(Image));       
        for (int i = 0; i < 4; i++)
        {
            for (int j = 102; j < 115; j++)
            {
                int tempId = j + (i * 100);
                Card tempCard = new Card(tempId);
                object obj = rm.GetObject("card"+tempId);
                int x = 12;
                tempCard.setImage((Image)obj);
                deck.Add(tempCard);
            }
        }
    }
private void initCards()
{
ResourceManager rm=新的ResourceManager(类型(图像));
对于(int i=0;i<4;i++)
{
对于(int j=102;j<115;j++)
{
int tempId=j+(i*100);
卡片tempCard=新卡片(tempId);
对象对象=rm.GetObject(“卡”+tempId);
int x=12;
tempCard.setImage((Image)obj);
甲板。添加(临时卡);
}
}
}

听起来您正在接受一个异常。寻找
catch
块。听起来不对。
GetObject
方法不能使方法像那样结束,除非它抛出异常。你可能在某处吞下了异常,因为方法不能中途“返回”。找到这个地方(查找try-catch块)并查看异常文本是什么。@我的想法一目了然-但是如果WinForms事件处理程序调用了
initCards
(例如
Form\u Load
),那么异常也将被吞没,在user-code中没有
catch
语句。在不相关的注释中,这段代码中显示的神奇数字()数量确实令人震惊。