每次我保存我的二进制文件它复制信息C#

时间:2017-05-21 14:15:23

标签: c#

每次我保存我的二进制文件时,它都会复制我的组合框内的内容。

我从这开始: Start Updated

这是我在二进制文件中保存的方式:

try
        {
            // Escreve para ficheiro os empregados da empresa.
            FileStream ficheiro = new FileStream("BinaryFile.dat", FileMode.Create);
            //BinaryWriter fich = new BinaryWriter(ficheiro);
            BinaryFormatter bf = new BinaryFormatter();
            bf.Serialize(ficheiro, ListasFilas.ListaMedico);
            //bf.Serialize(ficheiro, ListasFilas.ListaTecnicosAtendimento);
            //bf.Serialize(ficheiro, ListasFilas.ListaUrgencias);
            //bf.Serialize(ficheiro, ListasFilas.ListaUtentes);
            //bf.Serialize(ficheiro, ListasFilas.FilaAtAmarelo);
            //bf.Serialize(ficheiro, ListasFilas.FilaAtendimento);
            //bf.Serialize(ficheiro, ListasFilas.FilaAtRoxo);
            //bf.Serialize(ficheiro, ListasFilas.FilaAtVerde);
            //bf.Serialize(ficheiro, ListasFilas.FilaAtVermelho);

            ficheiro.Close();
        }
        catch (Exception err)
        {
            MessageBox.Show(err.Message);
            MessageBox.Show(err.StackTrace);
        }

        MessageBox.Show("Guardado");

这就是我加载的方式:

private void Form1_Load(object sender, EventArgs e)
    {

        try
        {
            // Carregar dados
            FileStream ficheiro = File.Open("BinaryFile.dat", FileMode.Open);
            BinaryFormatter bf = new BinaryFormatter();
            ListasFilas.ListaMedico = (List<Medico>)bf.Deserialize(ficheiro);

            ficheiro.Close();

            // Criação de Médicos
            Medico Medico1 = new Medico("Oftalmologia");
            Medico1.NumFuncionario = 1;
            Medico1.Nome = "Razvan Almeida";
            Medico1.Telefone = 911506099;
            Medico1.Email = "razvan.slb@saude.com";
            ListasFilas.ListaMedico.Add(Medico1);

...

它可能是什么?谢谢!

1 个答案:

答案 0 :(得分:0)

  1. 按钮单击(保存按钮)后,通过将空值分配给组合框的数据源属性来重新初始化组合框的值
  2. 使用新值
  3. 重新填充组合框的数据源属性