将checkedlistbox项放入数组中

时间:2012-02-15 07:04:00

标签: c# arrays string

checkedListBox中添加项目:

DirectoryInfo dinfo = new DirectoryInfo(@"D:\\templates");

FileInfo[] Files = dinfo.GetFiles("*.xml");

foreach (FileInfo file in Files)
{
      checkedListBox1.Items.Add(file.Name);
}

foreach (string i in checkedListBox1.CheckedItems)
{
      string[] array1 = i;
      for (int k = 0; k < array1.Length; k++)
      {
              XmlDocument xdoc1 = new XmlDocument();
              xdoc1.Load(array1[k]);
              string s1 = array1[k].ToUpper();
              int n = s1.IndexOf(array1[k]);
              name1 = array1[k].Substring(n);
      }

当我将它放入数组时,使用(string[] array1 = i;) 这是一个给予错误:

  

无法将类型'string'隐式转换为'string []'“

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

你做不到。你需要做这样的事情

 string[] array1 = new string[] { i };

您正尝试将string分配给string[]。这是不允许的。

答案 1 :(得分:0)

string[] array1 = new string[]{i};

DirectoryInfo dinfo = new DirectoryInfo(@"D:\\templates"); 
FileInfo[] Files = dinfo.GetFiles("*.xml"); 
Array.ForEach(Files, str => checkedListBox1.Items.Add(str.Name)); 
foreach (string i in checkedListBox1.CheckedItems) 
{  
    XmlDocument xdoc1 = new XmlDocument();
    xdoc1.Load(i);
    name1 = i.Substring(i.ToUpper().IndexOf(i));
}