picturebox SizeMode.AutoSize проблема C # - PullRequest
       11

picturebox SizeMode.AutoSize проблема C #

0 голосов
/ 16 сентября 2011

Я пытаюсь разрешить пользователю настраивать свойство режима размера для поля рисунка в форме с помощью переключателей.Он прекрасно работает для всех режимов размера, центра, увеличения, нормального и т. Д., Но когда пользователь выбирает автоматический размер, он изменяется, но оттуда он не позволяет пользователю вернуться к любым другим режимам размера.Скорее, это так, но это просто не работает.

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

 else if (autoSizeViewRadio.Checked == true)
 {
     centerViewRadio.Checked = false;
     normalViewRadio.Checked = false;
     stretchViewRadio.Checked = false;
     zoomViewRadio.Checked = false;
     pictureBox.SizeMode = PictureBoxSizeMode.AutoSize;
 }

Это пример кода, который я использую для установки режима размера.

Ответы [ 2 ]

2 голосов
/ 16 сентября 2011

AutoSize означает, что PictureBox будет соответствовать изображению.Таким образом, другие параметры все еще работают, но они не оказывают видимого влияния, поскольку PictureBox теперь точно такого же размера, как и изображение.Лично я бы не стал отображать авторазмер, так как пользователь не должен изменять размер графического блока.

Что касается примечания, я думаю, что это немного странно, что свойство * Picture * SizeMode изменит размерконтроль, но я не знаю, где еще они отложили бы это создание нового свойства только для этой опции.

2 голосов
/ 16 сентября 2011

См. MSDN

AutoSize: размер PictureBox равен размеру изображения, которое это содержит.

Источник: MSDN

Поскольку AutoSize делает PictureBox того же размера, что и само изображение, не имеет никакого смысла, что пользователь может изменить размер.

...