私はXMLファイルの保存/読み込みでWindowsフォームを取得しており、保存/ロードする場所をユーザーに尋ねます。私の問題は、ストリームリーダーが指定していない場所からファイルをロードするために、このメソッドを変更する方法を知らないことです。WindowsフォームXMLのSerilization Loadダイアログ
以下のコードは、私のボタンとLoadValuesメソッドです。
private void Edittask_loadbuttonClick(
object sender, EventArgs e)
{
Stream myStream = null;
var sFile1 = new OpenFileDialog();
sFile1.InitialDirectory = "c:\\";
sFile1.Filter = "xml files (*.xml)|*.xml";
sFile1.FilterIndex = 2;
sFile1.RestoreDirectory = true;
if (sFile1.ShowDialog() == DialogResult.OK)
{
try
{
if ((myStream = sFile1.OpenFile()) != null)
{
using (myStream)
{
var v = LoadValues();
this.load_task1_name.Text =
v.task1_name;
this.load_task1_desc.Text =
v.task1_desc;
this.load_task1_date.Value =
v.task1_date;
this.load_checkbox.Checked =
v.task1_checkbox;
}
}
}
catch (Exception ex)
{
MessageBox.Show(
"Error: Could not read file from disk. Original error: " +
ex.Message);
}
}
}
public Values LoadValues()
{
var serializer = new XmlSerializer(typeof (Values));
using (
TextReader textReader = new StreamReader(
"E:\\hello.xml")
)
{
return
(Values) serializer.Deserialize(textReader);
}
}
素晴らしいを!働いてくれた人:Dありがとう! –
うれしい私は助けることができます。答えがあなたの問題を解決するなら、あなたはそれを回答としてマークし、回答者が評判のポイントを得るのに役立ちます。 – TheEvilPenguin