簡體   English   中英

獲取組合框的值到文本框

[英]getting value of combobox to textbox

使用查詢,我將數據庫中的兩列值調用到一列中。 現在的重點是我想選擇一個值表單組合框並將一列值放入文本框中。

例如

從數據庫到下面的組合框的兩列值

10001 Haider <------ 當我選擇此索引時,我只想在文本框中查看海德爾

10002 法赫

10003 艾塔扎茲

我用來從數據庫中調用兩列值的代碼片段是:

public void account()
        {
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "SELECT acc_no, acc_name FROM accounts_record";
            MySqlDataAdapter adpt = new MySqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            adpt.Fill(ds);

            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                cbacc.Items.Add(ds.Tables[0].Rows[i][0] + "   " + ds.Tables[0].Rows[i][1]);
            }

            con.Close();
        }

您應該分別向組合框添加值和文本。 這是一個ComboBox示例:向項目添加文本和值(無綁定源)

如果必須在文本中顯示 id,則必須在將所選文本放入文本框之前進行一些解析。

如果您能夠在選擇更改時獲得組合框的 2 值文本,那么您可以用空格 (" ") 字符將其拆分並取第二個字符串並將其放入文本框中。

例如

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        string[] splitedStr = comboBox1.SelectedText.Split(' ');
        textBox1.Text = splitedStr[1];
    }

使用組合框的 ComboBox.SelectedIndexChanged 事件相應地填充文本框。 使用http://msdn.microsoft.com/en-us/library/system.windows.forms.combobox.selectedindexchanged(v=vs.110).aspx

您應該使用以下代碼

   private void Form1_Load(object sender, EventArgs e)
    {
            string conString = "Data Source=\\SQLEXPRESS;Initial Catalog=Test;Integrated                 Security=True";
            SqlConnection con = new SqlConnection(conString);
            SqlCommand cmd = new SqlCommand();
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "SELECT acc_no +'-' + acc_name as AccNoWithName , acc_no as ActNo FROM accounts_record";
            SqlDataAdapter adpt = new SqlDataAdapter(cmd);
            DataSet dsn = new DataSet();
            adpt.Fill(dsn);
            con.Close();

            comboBox1.DisplayMember = "AccNoWithName";
            comboBox1.ValueMember = "ActNo";
            comboBox1.DataSource = dsn.Tables[0];
   }


private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
            textBox1.Text = comboBox1.SelectedValue.ToString();
 }

暫無
暫無

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

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