2010-10-19 148 views
0

控件數組數據我有我已經加入到一個標籤頁「TAB1」下面的TrackBar控件:如何閱讀從C#

   TrackBar[] tbs = new TrackBar[nooftbsneeded]; 


       // Add TrackBars 
       TrackBar tbx = new TrackBar(); 
       tbx.Location = new Point(28, 150 + (i * 200)); 
       tbx.Size = new Size(686, 45); 
       tbx.Minimum = 0; 
       tbx.Maximum = 16; 
       tbx.SmallChange = 1; 
       tbx.LargeChange = 2; 
       tbx.Value = 8; 

       // create events (using a lambda expression) for each trackbar to change values. 
       tbx.Scroll += (o, a) => 
       { 
        // Update text values 
        if (tbx.Value == 0) 
        { 
         label3x.Text = "Extremely Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 1) 
        { 
         label3x.Text = "Extremely Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 2) 
        { 
         label3x.Text = "Very Strongly Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 3) 
        { 
         label3x.Text = "Very Strongly Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 4) 
        { 
         label3x.Text = "Strongly Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 5) 
        { 
         label3x.Text = "Strongly Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 6) 
        { 
         label3x.Text = "Moderately Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 7) 
        { 
         label3x.Text = "Moderately Better"; 
         label4x.Text = ""; 
        } 
        if (tbx.Value == 8) 
        { 
         label3x.Text = "Equal"; 
         label4x.Text = "Equal"; 
        } 
        if (tbx.Value == 9) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Moderately Better"; 
        } 
        if (tbx.Value == 10) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Moderately Better"; 
        } 
        if (tbx.Value == 11) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Strongly Better"; 
        } 
        if (tbx.Value == 12) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Strongly Better"; 
        } 
        if (tbx.Value == 13) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Very Strongly Better"; 
        } 
        if (tbx.Value == 14) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Very Strongly Better"; 
        } 
        if (tbx.Value == 15) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Extremely Better"; 
        } 
        if (tbx.Value == 16) 
        { 
         label3x.Text = ""; 
         label4x.Text = "Extremely Better"; 
        } 


       }; 

       tbs[i] = tbx; 
       tab1.Controls.Add(tbs[i]); 

我現在該如何得到trackbars的個人價值觀?

我已經嘗試了所有我可以想到的調用組合。我只是不知道如何引用單獨的trackbar控件。

回答

0

確認這是在你的職業等級聲明:

TrackBar[] tbs; 

然後,在你的方法,只是將其初始化(不重新聲明它):

tbs = new TrackBar[nooftbsneeded]; 
// ... Create track bars 

在這一點上,您可以稍後通過以下方式讀取數值:

var value = tbs[3].Value; 
0
foreach(var control in tab1.Controls){ 

    if(control.GetType() == typeof(TrackBar)){ 
     object value = ((TrackBar)control).Value; 
    } 
} 
+0

謝謝喲你的迴應,這工作出色的另一點代碼我有(我有一個循環未聲明的TrackBars)。 – RHodgett 2010-10-21 11:26:05