我正在尝试保存并打开一个由对象列表组成的文件。我现在的问题是,当我打开文件时,我保存没有任何反应。该程序应该使用dragTo事件。当我使用该事件时,拖动的对象将保存在列表“ojl”中 这是我保存和打开的方法。
DragTo dragto1 = new DragTo();
OpenFileDialog openDialog = new OpenFileDialog();
SaveFileDialog saveDialog = new SaveFileDialog();
BinaryFormatter form = new BinaryFormatter();
public void Save() // Method to save list of objects (Save)
{
saveDialog.Filter = "dat files (*.dat)|*.dat|All files (*.*)|*.*";
if (saveDialog.ShowDialog() == DialogResult.OK)
{
FileStream outStr = new FileStream(saveDialog.FileName, FileMode.Create); //Create new FileStream
form.Serialize(outStr, dragto1.Ojl);
outStr.Close();
}
}
public void Open() // Method for open saved list of objects (Load/Open)
{
openDialog.Filter = "dat files (*.dat)|*.dat|All files (*.*)|*.*";
if (openDialog.ShowDialog() == DialogResult.OK)
{
FileStream inStr = new FileStream(openDialog.FileName, FileMode.Open); //Create new FileStream
dragto1.Ojl = (List<DrawnObject>)form.Deserialize(inStr);
inStr.Close();
}
,列表在另一个类(DragTo)
private List<DrawnObject> ojl = new List<DrawnObject>();
public List<DrawnObject> Ojl
{
get { return ojl; }
set { ojl = value; }
}
我还刷新了对象所在的控制器。但是列表没有从open方法中获取新值。文件的格式是否与它有关(.dat)?