Ejemplo n.º 1
0
        private void MenuItem_FileSave(object sender, RoutedEventArgs e)
        {
            var r = new Recepie();

            r.Fermentables     = Grist.ToList();
            r.BoilHops         = BoilHops.ToList();
            r.MashProfile      = MashProfileList.ToList();
            r.OtherIngredients = OtherIngredientsList.ToList();
            r.Name             = NameTextBox.Text;

            r.BatchVolume         = Volumes.FinalBatchVolume;
            r.PreBoilTapOffVolume = Volumes.PreBoilTapOff;
            r.TopUpMashWater      = 0;

            r.OriginalGravity = OriginalGravity;
            r.BoilTime        = BoilTime;


            // Create OpenFileDialog
            Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();



            // Set filter for file extension and default file extension
            dlg.DefaultExt       = ".gsrx";
            dlg.Filter           = "Grainfather recipe files (*.gsrx)|*.gsrx";
            dlg.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
            dlg.FileName         = NameTextBox.Text;

            // Display OpenFileDialog by calling ShowDialog method
            Nullable <bool> result = dlg.ShowDialog();


            if (result != true)
            {
                return;
            }

            XmlSerializer serializer = new XmlSerializer(typeof(Recepie));
            FileStream    saveStream = new FileStream(dlg.FileName, FileMode.OpenOrCreate, FileAccess.Write);

            serializer.Serialize(saveStream, r);
            saveStream.Close();
        }