我有字典。首先我初始化它们。从C文件加载字典#
public Dictionary<string, Bitmap> lookup;
public Dictionary<string, Bitmap> lookup2;
public Dictionary<string, Bitmap> lookup3;
然后在button_click事件上加载字典。
private void button2_Click_1(object sender, EventArgs e)
{
lookup = new Dictionary<string, Bitmap>();
Bitmap l1 = new Bitmap(@"C:\1\1.bmp", true); lookup.Add("1", l1);
// add hundreds more
}
的问题是,这种代码占用了近一半的我的主要文件的空间,所以我在想创建一个单独的文件,从它加载字典。
所以我试图创建一个单独的类(CS)文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
namespace getDictData
{
class mydict
{
public static void loadDict()
{
Dictionary<string, Bitmap> lookup = new Dictionary<string, Bitmap>();
Bitmap l1 = new Bitmap(@"C:\1\1.bmp", true); lookup.Add("1", l1);
}
}
}
在主文件我补充一下:
using getDictData
,并使用它像这样:
private void button2_Click_1(object sender, EventArgs e)
{
mydict.loadDict();
}
似乎没有任何工作..所以你如何从不同的文件加载方法与C#?
编辑:我使用此代码来检查,如果事情被加载到词典:
private void button8_Click(object sender, EventArgs e)
{
var targer = lookup.ToList(); // error is thrown here
string s = targer[0].Key;
textBox6.Text = "" + s;
}
结果总是空,不管我怎么更改代码。
“值不能为空参数名:源”
,如果我删除主文件的字典初始化我越来越
“这个名字‘查找’不存在当前上下文存在”
'没有什么似乎在工作什么是什么? – Reniuz 2012-03-31 10:02:30
看起来正确。它是否编译? “你的一半文件空间”是什么意思?什么使得加载代码如此之大?如果有很多位图加载,也许你应该加载目录中的所有图像?另外:C#代码通常具有以大写字母开头的名称空间,类名称和方法名称。 – 2012-03-31 10:02:32
您正在使用单独的名称空间来执行处理? – 2012-03-31 10:04:43