コード例 #1
0
        private void RestoreState(EmergencyEventComponent.EmergencyEventComponent component)
        {
            if (!File.Exists(AppState.StateFileName))
            {
                return;
            }
            var file = new FileStream(AppState.StateFileName, FileMode.Open);

            try
            {
                var serializer = new XmlSerializer(typeof(AppState));
                var state      = (AppState)serializer.Deserialize(file);
                Height             = state.Height;
                Width              = state.Width;
                component.DateFrom = state.DateFrom;
                component.DateTo   = state.DateTo;
            }
            catch (SerializationException e)
            {
                Console.WriteLine("Failed to deserialize. Reason: " + e.Message);
            }
            finally
            {
                file.Close();
            }
        }
コード例 #2
0
        private void SaveState(EmergencyEventComponent.EmergencyEventComponent component)
        {
            var file  = new FileStream(AppState.StateFileName, FileMode.Create);
            var state = new AppState
            {
                DateFrom = component.DateFrom,
                DateTo   = component.DateTo,
                Height   = Height,
                Width    = Width
            };

            try
            {
                var serializer = new XmlSerializer(typeof(AppState));
                serializer.Serialize(file, state);
                //var formatter = new BinaryFormatter();
                //formatter.Serialize(file, state);
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                file.Close();
            }
        }