簡體   English   中英

如何在隱藏面板上更改ComboBox.Text?

[英]How to change ComboBox.Text on a hidden panel?

ComboBox1在隱藏的面板上(panelSky)

ComboBox1.Text = "323";
panelSky.Visible = true; // combo doesn't have text "323'

請問是什么原因?
如果面板可見,則無論項目列表中是否包含“ 323”,我都可以將comboText更改為“ 323”。

也許組合類型(即DropDownStyle)不合適...

嘗試改用Combo1.Items.Add("323") ,然后將索引設置為0(第一項)

Combo1.SelectedIndex = 0 

如果我正確理解,則Combox1位於Type Panel的容器中

所以下面的代碼是我的把戲

        if (comboBox1.Parent.Visible)
        {
            comboBox1.Text = "323";
        }

更新:了解您的方案后

button1位於可見的Panel1中,而combox1位於不可見的Panel2中

    private void button1_Click(object sender, EventArgs e)
    {
        if (comboBox1.Parent.Visible)
        {
            comboBox1.Text = "323";
        }
    }

我對您的情況做了一些測試。 我創建了一個帶有面板和combobox的新winforms應用程序。 在表單加載中,我將面板的可見性設置為false,並將combobox設置為"323" ,然后將面板的可見性設置為true,而"323"仍然存在。 這是我所做的:

pnlSky.Visible = false;
comboBox1.Text = "323";
pnlSky.Visible = true;

panel不可見時,設置combobox值時,標記或代碼中一定存在引起問題的問題。 您可以張貼標記以及在設置combobox的值之前和之后出現什么代碼?

根據您對@HatSoft有關從另一個panel上的button更新combobox評論,我運行了以下代碼,它仍然更新了隱藏的combobox

 private void button1_Click(object sender, EventArgs e)
 {
     combobox1.Text = "323";
     pnlSky.Visible = true;
 }

暫無
暫無

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

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