我使用Telerik Browse Editor在我的程序中打开文件。但由于某种原因,它要求我两次该文件。从下面的代码可以看到为什么?
private void radBrowseEditor1_ValueChanged(object sender, EventArgs e)
{
using (OpenFileDialog openFileDialog = new OpenFileDialog())
{
openFileDialog.Title = @"Open .HRM File";
openFileDialog.InitialDirectory = @"C:\Users\mike\Desktop";
openFileDialog.Filter = @"HRM files (*.hrm)|*.hrm|All files (*.*)|*.*";
openFileDialog.FilterIndex = 2;
openFileDialog.RestoreDirectory = true;
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
}
using (StreamReader reader = new StreamReader(openFileDialog.FileName, System.Text.Encoding.Default))
{
HRM.Active.Raw = reader.ReadToEnd();
}
}
}
可能非常简单。在我安装Telerik之前,我确实使用了工具条时使用的代码,并且工作正常。
答案 0 :(得分:0)
阅读完本文http://www.telerik.com/help/winforms/editors-browse-editor-working-with.html后,您似乎甚至不需要打扰openFileDialog。看起来你应该检查该值是否为空白。
private void radBrowseEditor1_ValueChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(radBrowseEditor1.Value.ToString()))
{
using (StreamReader reader = new StreamReader(radBrowseEditor1.Value.ToString(), System.Text.Encoding.Default))
{
HRM.Active.Raw = reader.ReadToEnd();
}
}
}