Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.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#在Messagebox中使用相同的字符串制作列表?_C#_String_Winforms - Fatal编程技术网

C#在Messagebox中使用相同的字符串制作列表?

C#在Messagebox中使用相同的字符串制作列表?,c#,string,winforms,C#,String,Winforms,我正在使用一个文件管理器,它将根据扩展名和文件名移动文件。我目前正在添加messagebox,告诉我哪些文件无法移动,我希望它在messagebox中显示文件名,如果有多个文件,我希望它显示为列表,而不是每个文件名都有单独的弹出窗口 我试过字符串生成器,它在我的foreach中给了我一个错误,说它不能将字符转换成字符串。我也尝试了string.join,但得到的结果与。。。messageBox.Show(“fdsafjdsla”) 我倾向于使用这个 Stringbuilder sBuilder

我正在使用一个文件管理器,它将根据扩展名和文件名移动文件。我目前正在添加messagebox,告诉我哪些文件无法移动,我希望它在messagebox中显示文件名,如果有多个文件,我希望它显示为列表,而不是每个文件名都有单独的弹出窗口

我试过字符串生成器,它在我的foreach中给了我一个错误,说它不能将字符转换成字符串。我也尝试了string.join,但得到的结果与。。。messageBox.Show(“fdsafjdsla”)

我倾向于使用这个

Stringbuilder sBuilder = new Stringbuilder();

Foreach(your loop)
{
     sBuilder.Append("the value you want to append" +  Environment.NewLine);
} 

MessageBox.Show(sBuilder.ToString());
注意
Environment.NewLine-->为您提供一个新行

如果您只需要文件路径中的文件名,请这样使用

  string fileName = @"C:\mydir\myfile.ext";
  string result;
  result = Path.GetFileName(fileName);
它将输出

myfile.ext

请向我们展示您在foreach循环中与字符串生成器一起使用的代码。在循环中使用字符串生成器时,应使用AppendLine方法,然后在循环关闭后,将其传递给Message box show方法,调用ToString方法。显示您的代码,否则我只能想象投票被否决以及此帖子被关闭的可能性,而且您没有使用字符串。正确加入。。显示您的代码好吧,我意识到我必须创建新的字符串名称,我正在尝试创建已经声明的名称。还有一个小问题,它也给了我目录,我只需要文件名。谢谢你,Care Palsson,工作得很好。@user1884552如果有助于你,请将答案标记为已接受谢谢;)