获取用户输入并将其用作流程
Take user input and use it as Process
所以基本上,我有一个 OpenFileDialog,用户将在其中 select 一个位置。
我这样做是为了在文本框中显示目录。
但我想要的是有另一个按钮,它将获取该目录并使用 ProcessStartInfo
.
启动它
OpenFileDialog,在 TextBox 中显示:
public void button4_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = "Open Arma 3";
ofd.Filter = "EXE file|*.exe";
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
textBox1.Text = ofd.FileName;
}
}
进程:
private void button3_Click(object sender, EventArgs e)
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = //RESULT OPENFILEDIALOG SHOULD BE HERE
startInfo.Arguments = @"-window -useBE -mod=e:\Aaron\Addons\@CBA_A3";
Process.Start(startInfo);
}
由于您已经将 OpenFileDialog 的结果保存在 textBox1 中,因此您可以在 button3_Click 事件处理程序中轻松访问它。
填写startInfo.FileName:
*我添加了额外的 IsNullOrWhiteSpace 检查,因此如果 textBox1.Text 为空,应用程序不会启动另一个进程。
if(!string.IsNullOrWhiteSpace(textBox1.Text)
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = textBox1.Text
startInfo.Arguments = @"-window -useBE -mod=e:\Aaron\Addons\@CBA_A3";
Process.Start(startInfo);
}
所以基本上,我有一个 OpenFileDialog,用户将在其中 select 一个位置。
我这样做是为了在文本框中显示目录。
但我想要的是有另一个按钮,它将获取该目录并使用 ProcessStartInfo
.
OpenFileDialog,在 TextBox 中显示:
public void button4_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = "Open Arma 3";
ofd.Filter = "EXE file|*.exe";
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
textBox1.Text = ofd.FileName;
}
}
进程:
private void button3_Click(object sender, EventArgs e)
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = //RESULT OPENFILEDIALOG SHOULD BE HERE
startInfo.Arguments = @"-window -useBE -mod=e:\Aaron\Addons\@CBA_A3";
Process.Start(startInfo);
}
由于您已经将 OpenFileDialog 的结果保存在 textBox1 中,因此您可以在 button3_Click 事件处理程序中轻松访问它。
填写startInfo.FileName:
*我添加了额外的 IsNullOrWhiteSpace 检查,因此如果 textBox1.Text 为空,应用程序不会启动另一个进程。
if(!string.IsNullOrWhiteSpace(textBox1.Text)
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = textBox1.Text
startInfo.Arguments = @"-window -useBE -mod=e:\Aaron\Addons\@CBA_A3";
Process.Start(startInfo);
}