如何在checkedlistbox中的所有选中项目上运行命令行应用程序?
我使用以下代码将文件添加到列表框中:
private void button2_Click(object sender, EventArgs e)
{
var filters = "*.avi|*.mkv";
odd.ShowNewFolderButton = false;
if (odd.ShowDialog() == DialogResult.OK)
{
string folderName = odd.SelectedPath;
string[] files = Directory.GetFiles(folderName, "*.*", SearchOption.AllDirectories);
foreach (string file in files) checkedListBox1.Items.Add(file, CheckState.Checked);
}
}
现在我想用参数处理(转换)所有(已检查)项目的x264.exe添加到列表框
答案 0 :(得分:1)
我不确定是否已完全理解您的问题,但如果您想为checkedlistbox中的每个已检查元素运行命令,则可以在每个已检查项目的每个循环中使用a:
foreach(object itemChecked in checkedListBox1.CheckedItems) {
Process.Start("someapp.exe");
}
答案 1 :(得分:1)
免责声明 - 我不确定我是否完全遵循您要完成的任务,但是:
如果要将列表框中所有项目合并到一个语句中,您可以执行以下操作:
string commands = checkedListBox1.CheckedItems.Cast<string>().Aggregate((i,j) =>i + " " + j);
含义,如果您的选中列表框项目是:
/t
/run
/something
你得到/t /run /something