0

在这一点上,我注意到我做错了什么。我写了这几行代码

private void btnBrowse_Click(object sender, RoutedEventArgs e) 
{
    try 
    {
        OpenFileDialog op = new OpenFileDialog();
        op.ShowDialog();
        if (op.ShowDialog() == DialogResult.OK) 
        {
            txtpath.Text = op.FileName;
        }
    }
    catch { }
}

但这不起作用,因为错误指出

“bool”不包含“OK”的定义

它应该在列表框中读出。

4

2 回答 2

1

ShowDialogbool?在 WPF 中返回一个。所以:

OpenFileDialog op = new OpenFileDialog();

var result = op.ShowDialog();

if (result.GetValueOrDefault());
{
    txtpath.Text = op.FileName;
}
于 2018-01-05T12:59:31.520 回答
1

它必须是这样的。ShowDialog()将阻塞直到对话框关闭。

OpenFileDialog op = new OpenFileDialog();
if (op.ShowDialog().GetValueOrDefault()) 
{ 
    txtpath.Text = op.FileName; 
}

请正确格式化您的问题并告诉我们您遇到了哪些错误(如编译器错误、异常、奇怪的行为......)。

于 2018-01-05T12:51:07.900 回答