簡體   English   中英

嘗試從動態自定義控件中檢索值

[英]Attempting to retrieve value from a dynamic custom control

我需要從自定義控件中的文本框中檢索文本。 自定義控件是ArrayList的一部分,因此在窗體上可以顯示多個自定義控件。 如何從ArrayList控件之一中的單個文本框中訪問文本?

下面的代碼顯示了我如何創建動態自定義控件:

    ArrayList assessmentInfo = new ArrayList();

    int length = (int)moduleInfoLevel6.numericUpDownModuleAssessmentNum.Value;
    for (int i = 0; i < length; i++)
    {
        assessmentInfo.Add(new AssessmentInfo());
        System.Drawing.Point p = new System.Drawing.Point(10, 160 + i * 32);
        (assessmentInfo[i] as AssessmentInfo).Location = p;
        (assessmentInfo[i] as AssessmentInfo).Size = new System.Drawing.Size(440, 32);                
        tabPageLevel6.Controls.Add((assessmentInfo[i] as AssessmentInfo));
    }

以下是顯示自定義控件顯示方式的屏幕截圖:

AssessmentInfo自定義控件

http://i.imgur.com/9qwCL.jpg

自定義控件如何在表單上顯示

http://i.imgur.com/DFJYV.jpg

您可以為每個控件添加一個名稱

就像是:

(assessmentInfo[i] as AssessmentInfo).Name = "assessmentInfo" + i.ToString();

那么您可以通過以下方式訪問它

foreach (object control in tabPageLevel6.Controls)
{
    if (control is AssessmentInfo)
    {
        if ((control as AssessmentInfo).Name == "assessmentInfo1")
            // do something with the control
            MessageBox.Show((control as AssessmentInfo).Name);                    
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM