C# 为什么我的OpenFileDialog不能工作?

C# 为什么我的OpenFileDialog不能工作?,c#,openfiledialog,C#,Openfiledialog,我正在尝试保存并打开一个包含对象列表的文件。我现在的问题是,当我打开我保存的文件时,什么都没有发生。程序应该使用dragTo事件。使用该事件时,拖动的对象将保存在列表ojl中 下面是我的保存和打开方法 DragTo dragto1 = new DragTo(); OpenFileDialog openDialog = new OpenFileDialog(); SaveFileDialog saveDialog = new SaveFileDialog(); Bi

我正在尝试保存并打开一个包含对象列表的文件。我现在的问题是,当我打开我保存的文件时,什么都没有发生。程序应该使用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有关?

尝试将saveDialog.Filter更改为类似于此savefile的格式。Filter=Tdat files*.dat |*.dat | All files*.dat*|*。| saveDialog.FileName的名称是什么?您是否可以为其中一个指定一个常量值以进行测试,例如`avefile.FileName=SaveDialog_TestFile.txt;openFileDialog是否显示在屏幕上?如果是这样的话,它是有效的。您是否有任何异常?它处于打开状态,没有异常。DragTo DragTo您是否设置了允许拖放的属性?例如this.AllowDrop=true;如果尚未设置事件,则还需要设置事件。。allowdrop为true,事件也已修复。