将Read .text拆分为ComboBox

时间:2014-05-12 17:27:15

标签: c# split

我正在从我制作的.dll中读取.txt。

我的代码是:

Assembly assembly = Assembly.LoadFile(Application.StartupPath + "/MyFiles.dll");
System.Resources.ResourceManager resourcemanager = new System.Resources.ResourceManager("ClassLibrary1.Properties.Resources", assembly);
string[] strArrays15 = resourcemanager.GetString("JobsList").Split('\n');
for (int t = 1; t < (int)strArrays15.Length; t++)
    comboBox1.Items.Add(strArrays15[0].Split('\t'));
return;

我在第三行收到以下错误:对象引用未设置为对象的实例

1 个答案:

答案 0 :(得分:0)

你的问题是comboBox1.Items.Add(strArrays15[0].Split('\t'));你正在运行for语句,每次for循环运行时,从第一个strArrays15数组的Split中添加一个字符串数组到combobox项。这只是创建了一个庞大的字符串数组列表。单个字符串数组上的combobox.AddRange,或循环并添加每个单独的项目。

这是另外一个问题。

您正在循环浏览(int)strArrays15.Length,但使用strArrays15[0].Split('\t');代替strArrays15[i].Split('\t');,并将分割中的输出字符串数组添加到combox项目中,而这并不是感。你需要更清楚自己想要完成什么。

Assembly assembly = Assembly.LoadFile(Application.StartupPath + "/MyFiles.dll");
System.Resources.ResourceManager resourcemanager = new System.Resources.ResourceManager("ClassLibrary1.Properties.Resources", assembly);
if (resourcemanager != null) {
  string jobListString = resourcemanager.GetString("JobsList");
  if (!String.isNullOrEmpty(jobListString))
    comboBox1.Items.AddRange(strArrays15[0].Split('\t'));
  else
    // handle error
} else
  //handle error
return;

从您的代码中看起来strArrays15看起来有超过1行,所以除非您确切地告诉我您尝试将哪些数据放入combox,以及strArrays15中的内容,否则我可以&#39 ; t进一步帮助你。

相关问题