public class GlobalSettings
{
public static ApplicationSettings appSettings = new ApplicationSettings();
public static void SaveSettings(ApplicationSettings config)
{
IFormatter binaryFormatter = new BinaryFormatter();
Stream stream = new FileStream(Application.StartupPath + "\\" + "Settings.bin",
FileMode.Create, FileAccess.Write, FileShare.None);
binaryFormatter.Serialize(stream, config);
stream.Close();
}
public static void LoadSettings(ApplicationSettings config)
{
IFormatter formatter = new BinaryFormatter();
Stream stream = new FileStream(Application.StartupPath + "\\" + "Settings.bin",
FileMode.Open, FileAccess.Read, FileShare.None);
config = (ApplicationSettings)formatter.Deserialize(stream);
stream.Close();
}
}
Не грузятся сохранённые настройки. Сериализация. Статический класс.
Код:
Код:
[Serializable]
public class ApplicationSettings
{
//Свойства
public Color ColorBackScreen; //Цвет фона окна на котором выделяют область
public Color ColorLinesRect; //Цвет прямоугольной рамки выделения
public Point MainWindowPosition;
public Boolean SaveScreenshotsInDefFolser; //ФЛАГ сохранять ли скришнот в папку по умолчанию
public String DefaultFolderForScreenshots; //папка для сохранения скриншотов по умолчанию
public ScreenshotFormat ScreenImageFormat; //Должно будет использоваться в методе ConvertFromImageFormat_ToScreenshotFormat()
public ApplicationSettings()
{
ColorBackScreen = Color.WhiteSmoke;
ColorLinesRect = Color.Red;
MainWindowPosition = new Point(Screen.PrimaryScreen.Bounds.Width / 2,
Screen.PrimaryScreen.Bounds.Height / 2);
SaveScreenshotsInDefFolser = true;
DefaultFolderForScreenshots = String.Empty;
ScreenImageFormat = ScreenshotFormat.BMP;
}
}
public class ApplicationSettings
{
//Свойства
public Color ColorBackScreen; //Цвет фона окна на котором выделяют область
public Color ColorLinesRect; //Цвет прямоугольной рамки выделения
public Point MainWindowPosition;
public Boolean SaveScreenshotsInDefFolser; //ФЛАГ сохранять ли скришнот в папку по умолчанию
public String DefaultFolderForScreenshots; //папка для сохранения скриншотов по умолчанию
public ScreenshotFormat ScreenImageFormat; //Должно будет использоваться в методе ConvertFromImageFormat_ToScreenshotFormat()
public ApplicationSettings()
{
ColorBackScreen = Color.WhiteSmoke;
ColorLinesRect = Color.Red;
MainWindowPosition = new Point(Screen.PrimaryScreen.Bounds.Width / 2,
Screen.PrimaryScreen.Bounds.Height / 2);
SaveScreenshotsInDefFolser = true;
DefaultFolderForScreenshots = String.Empty;
ScreenImageFormat = ScreenshotFormat.BMP;
}
}