2016-03-28 21 views
-2

Bir panel üzerinde winform içinde bir ilerleme çubuğu kullanıyorum. İstediğim şey, çubuğun geri rengini saydam hale getirmektir, böylece herhangi biri panelin görüntüsünüBir progressbar backcolor için şeffaf c yapın. #

progree çubuğu içinden görebilir

Transparancy anahtarını ve winform'unu kullanabileceğimizi ve bu rengi ilerleme çubuğu arka rengine ayarlayabildiğimizi biliyorum, ancak ilerleme çubuğu arka rengini saydam yapmak istiyorum ve transaprancy anahtarının bir panelde kullanılamayacağını düşünüyorum. ilerleme çubuğu geri rengini şeffaf hale getirmek için bir yol? ben bu kodu

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
     panel1.BackColor = Color.Transparent; 
     progressBar1.BackColor = Color.Transparent; 
    } 
} 

Bana şeffaf arka plan renklerini desteklemiyor

Kontrol gibi bazı hata atar koyduğumuzda.

+1

The ayarlayın istisna mesajı hayal gücüne çok az bırakır. Kontrol sınıfından türeterek kendi ilerleme çubuğunuzu oluşturmak özellikle zor değildir. –

+0

ya da belki haklısın ama bunu yapmanın bir yolu var mı? – arn48

+0

Neden insanlar cevap veremedikleri konusunda bazı soruları olumsuz olarak değerlendiriyorlar. İlgilenmediğim ve problemi çözdüğümden emin olun, bu yüzden kimin olumsuz oy kullandığını kontrol edin. – arn48

cevap

-1

Bu kontrol özellikleri bu nedenle ilk özelliğini ayarlayın izin desteklenmeyen

protected override void OnPaintBackground(PaintEventArgs p) 
    { 
     SetStyle(ControlStyles.SupportsTransparentBackColor, true); 
     base.OnPaintBackground(p); 
    } 

şimdi kontrol ebeveyn kontrolü üzerine ("Şeffaflık tarzı") bağlıdır, böylece şeffaf

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
     panel2.BackColor = Color.Transparent; 
    } 
İlgili konular