3

我见过几个类似的问题,但我不知道我做错了什么。我有一个列表框,我希望在其中列出所有选定的测试文件而不列出整个路径。使用此当前代码,不会在列表框中输入任何文本。我哪里错了?

if (cmdBrowse.ShowDialog() == DialogResult.OK)
{
    string testNameShort = Path.GetFileName(listboxTestsToRun.Text.ToString());
    listboxTestsToRun.Items.Add(testNameShort);
}

提前致谢!

4

3 回答 3

8

假设cmdBrowse 是一个 OpenFileDialog 并且您希望将用户选择的文件名添加到列表框中。在这种情况下,您编写此代码

if (cmdBrowse.ShowDialog() == DialogResult.OK)
{
   if(cmdBrowse.FileName.Length > 0)
   {
      string testNameShort = Path.GetFileName(cmdBrowse.FileName);
      listboxTestsToRun.Items.Add(testNameShort);
   }
}
于 2013-06-27T13:20:29.980 回答
1

如果cmdBrowseOpenFileDialog,那么,除非您期望从列表框中获得其他有意义的东西,否则您需要使用用户选择的路径(我怀疑您正在尝试这样做),例如:

var fileName = Path.GetFileName(cmdBrowse.FileName);
于 2013-06-27T13:20:14.017 回答
1

查看在您的路径上执行 Path.GetFileNameWithoutExtension(FilePath) 方法开始,然后将它们添加到框中

于 2013-06-27T13:20:29.420 回答