簡體   English   中英

通過文本框將字符串值保存到列表的特定標簽頁 <string> 我的數據

[英]Save string values via textboxes form a specific tabpage to a List<string> MyData

我正在使用Windows Form和C#開發應用程序。 如何將當前選項卡頁面上所有文本框的Text添加到List<string> Mydata 這是我的代碼如下:

foreach(Control c in Controls){
    if((c is TextBox) && (c.Text !="")){
         if(c.Tag.ToString() == "500"){
             StaticClass.Mydata.Items.Add(c.Text);
         }
    }
}

注意:Mydata(列表)在靜態類上是公共的。 我有一個帶有tabcontrol的表單,其中包含大約6個tabpage。 其他選項卡頁面也具有文本框,但是我只想檢索我在示例中關於tabindex 5的那些。

謝謝。

如果我理解正確,則需要從TabPage內的所有TextBox中獲取文本,但前提是Tag屬性等於字符串“ 500”。

您的代碼基本上是正確的,但是我已經對其做了一些修改(刪除了一些多余的括號等)。 我假設您的TabPage命名為tabPage1,indexOfTabPage是TabPage的索引,並且結果放置在本地List中。

您可以根據需要將字符串添加到靜態列表中。

int indexOfTabPage = 5;
List<string> myData = new List<string>();

foreach(Control c in this.tabControl1.TabPages[indexOfTabPage].Controls)
{
   if(c is TextBox && !string.IsNullOrEmpty(c.Text) && c.Tag != null && c.Tag.ToString() == "500")
   {
      myData.Add(c.Text);
   }
}
        private void GetTextBoxValueFromCurrentTabPage()
        {
            List<string> lstTextBoxData = new List<string>();
            foreach (var textBox in tabControl1.TabPages[tabControl1.SelectedIndex].Controls.OfType<TextBox>())
            {
                lstTextBoxData.Add(textBox.Text.Trim());
            }
        }

        private void GetTextBoxValueFromAllTabPages()
        {
            List<string> lstTextBoxData = new List<string>();
            foreach (TabPage tabPage in tabControl1.TabPages)
            {
                foreach (var textBox in tabPage.Controls.OfType<TextBox>())
                {
                    lstTextBoxData.Add(textBox.Text.Trim());
                }
            }
        }

暫無
暫無

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

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