2009-04-14 18 views
7

Control bir kapsayıcıya (Panel gibi) yerleştirildiğinde ve gösterilmek için çok geniş olduğunda (böylece kaydırma çubuğu görüntülenir), Control.Width Denetimin görünür genişliğini (resimdeki üst ok) döndürüyor gibi görünüyor.WinForms - Bir kontrolün "istediği" olmanın boyutunu nasıl elde edersiniz?

Denetimin "istediği" genişliğini nasıl elde edersiniz? yani, kaydırma yapmak zorunda kalmamanız için tam genişliğini (resimdeki alt ok). Bu amaçla yarayabilecek kontrollerin iki farklı özellikler vardır

alt text http://img19.imageshack.us/img19/372/size.png

cevap

8

bulunmaktadır. İlk olarak oluşturulduğu zaman kontrolün boyutu olan DefaultSize var ve sonra kontrolün konuşabileceği boyutta olan PreferredSize var. Tüm kontrollerin bu özellikleri vardır ve PreferredSize aradığınız kişi olmalıdır.

8

Bounds

Control.PreferredSize Eğer gerekli maksimum boyutu dönmelidir

1

Control.HorizontalScrollbar.Maximum veya Control.VerticalScrollbar.Maximum istediğim şey boyut eksi herhangi kaydırma çubukları onun

ClientSize çizilen gerçek boyutu olmasıdır. Dolgu işlemini kesebileceği için biraz az miktarda geri dönebilir.

İlgili konular