2 回答
TA贡献1847条经验 获得超7个赞
您收到此异常是因为您的selectedFile变量从未真正填充过。
在显示对话框并允许用户选择 XML 文件后,您需要填充selectedFile变量:
selectConfigFile.ShowDialog();
var selectedFile = selectConfigFile.SafeFileName;
XDocument configFile = XDocument.Load(selectedFile);
TA贡献1784条经验 获得超8个赞
是的,问题是您在显示对话框之前设置了 selectedFile 。如果您将代码重写为这种方式,则可以100%解决问题:
private void loadXMLBttn_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog selectConfigFile = new OpenFileDialog()
{
Title = "Select an existing XML config file...",
InitialDirectory = @"C:\",
DefaultExt = "*.xml",
Filter = "XML files|*.xml|All files (*.*)|*.*"
};
if (selectConfigFile.ShowDialog() == true)
{
var selectedFile = selectConfigFile.FileName;
XDocument configFile = XDocument.Load(selectedFile);
}
}
这将修复一个过滤器,该过滤器在您的示例中不起作用,它使文件对话框选项初始化程序更加清晰。此外,如果用户不选择任何文件 - 它不会尝试加载空字符串路径
- 2 回答
- 0 关注
- 160 浏览
添加回答
举报