2013-07-04 4 views
1

Что-то не так, как настройки сохраняются/читаются в приложениях Windows Forms.Форма становится больше после сохранения свойств размера и местоположения

Это не проблема с моим кодом. Но я не знаю, что случилось.

Form1_Load(object sender, EventArgs e) 
{ 
    this.Size = new Size(Properties.Settings.Default.Size.Width, Properties.Settings.Default.Size.Height); 
    this.Location = new Point(Properties.Settings.Default.Location.X, Properties.Settings.Default.Location.Y); 
} 

Form1_Closing(object sender, FormClosingEventArgs e) 
{ 
    Properties.Settings.Default.Location = this.Location; 
    Properties.Settings.Default.Size = this.Size; 
    Properties.Settings.Default.Save(); 
} 

Теперь. Вы можете видеть, что код прав.

Почему тогда форма становится больше и больше, а BIgger и BIGger и BIGGer и BIGGEr и BIGGER каждый раз я снова открываю приложение?

Предполагается, что он останется одного размера! Знаешь, так как я спас его и все ... Почему?

+5

Это чрезмерное использование ** Bigger **. – ChiefTwoPencils

+4

Расслабься, приятель, все будет хорошо. –

+5

Поскольку вы уже установили, что это не проблема с вашим кодом, вы ничего не можете сделать. Вы обречены. – nvoigt

ответ

4

Size свойство включает в себя область без клиента формы, которая может сильно колебаться в зависимости от того, есть ли у вас включены темы, Aero и т.д.

Попробуйте использовать ClientSize свойство вместо этого.

+0

Я тоже так думаю, что он не использует размер клиента при загрузке формы –

+0

Я не понимаю. Этот точный код работает безупречно годами. Почему это влияет только на это приложение и только сейчас? Это не имеет смысла. –

+0

Если я использую его в Form_Shown вместо Form_Load, вы можете увидеть повторную локализацию или изменение размера формы при ее запуске. И это не то, как вы хотите представить свое приложение людям. Выглядит немного ... странно. –

 Смежные вопросы

  • Нет связанных вопросов^_^