2010-12-07 12 views
5

Tabcontrol ile ilgili bir sorunum var. DrawMode'u ownderdrawfixed olarak değiştirdiğimde, tabcontrol'ün borderstyle'ı "fixedsingle" dan "3dfixed" olarak değişir, ancak tabcontrol borderstyle'ın böyle bir özelliği yoktur. tabcontrol borderstyle için en yakın şey değişmeyen bir görünümdür. Yukarıdaki resmetabcontrol ownerdraw tabcontrol'ün kenarlık stilini değiştirir

alt text

bakmak bahsediyorum ben anlamak için.

ownerdraw olmadan sekme başlığı rengini değiştirmenin herhangi bir yolu var, bu yüzden ownerdraw kullanmam gerekmeyecek?

veya tabcontrol'ün kenarlıklarını nasıl düzeltebilirim?

+0

ownerdraw görsel stiller renderer devre dışı bırakır:

da ağaç ownerdraw ilgili bu soruya bakın. –

+0

ownerdraw'da nasıl etkinleştirebilirim? – Ron

cevap

3

Sahip denetimi için bir denetim ayarladığınızda, özellikle "Bu denetim için tüm çizimleri ele alacağım" diyorsunuz. Bu, görsel stilleri tamamen işlemeyi devre dışı bırakır.

Görsel stillerle bir denetim oluşturmak için, System.Windows.Forms.VisualStyles ad alanında bulunan özellikleri kullanmanız gerekir. İyi bir kod gerektiriyor, ama sonra bunu kendin halletmek istediğini söylüyorsun. VisualStyleRenderer için örneklerle başlıyorum - render etmek için VisualStyleElements'u geçmeniz gerekiyor. VisualStyleRenderer and themes (WinForms)

+0

İstediğim kenarlığı çizmek için bu işlevi kullanıyorum http://msdn.microsoft.com/en-us/library/system.windows.forms.visualstyles.visualstyleelement.tab.pane%28v=VS.90%29.aspx ama nasıl kullanacağımı bilmiyorum. DrawVisualStyleElementTabPane1 (e) formun boya işlevine koyduğumda yeni bir "denetim" çizer. – Ron