列表框

Listbox 是一個可以包含物件集合的控制元件。Listbox 類似於 Combobox 但是在 Combobox; 只有選定的專案對使用者可見。在 Listbox; 使用者可以看到所有專案。

如何將專案新增到 ListBox?

private void Form3_Load(object sender, EventArgs e)
        {
            string test = "Trial";
            string test2 = "45";
            int numberTest = 43;
            decimal decimalTest = 130;
            
            listBox1.Items.Add(test);
            listBox1.Items.Add(test2);
            listBox1.Items.Add(numberTest);
            listBox1.Items.Add(decimalTest);
        }

輸出 ;

StackOverflow 文件

或者 datasources 可以給,

private void Form3_Load(object sender, EventArgs e)
        {
            List<string> TestList = new List<string> { "test1", "test2", "test3", "44", "55" };
            listBox1.DataSource = TestList;
        }

輸出;

StackOverflow 文件

private void Form3_Load(object sender, EventArgs e)
        {
            SqlConnection Connection = new SqlConnection("Server=serverName;Database=db;Trusted_Connection=True;"); //Connetion to MS-SQL(RDBMS)
            Connection.Open(); //Connection open
            SqlDataAdapter Adapter = new SqlDataAdapter("Select * From TestTable", Connection); // Get all records from TestTable.
            DataTable DT = new DataTable();
            Adapter.Fill(DT); // Fill records to DataTable.
            listBox1.DataSource = DT; // DataTable is the datasource.
            listBox1.ValueMember = "TestID"; 
            listBox1.DisplayMember= "TestName";
        }

合適的輸出 ;

StackOverflow 文件

將外部 sql 資料來源提供給列表框需要,ValueMemberDisplayMember

如果**不是,**它會是這樣的,

StackOverflow 文件

有用的事件;

SelectedIndex_Changed;

定義列表以提供資料來源

private void Form3_Load(object sender, EventArgs e)
        {
            List<string> DataList = new List<string> {"test1" , "test2" , "test3" , "44" , "45" };
            listBox1.DataSource = TestList;
        }

在表單的設計中選擇 Listbox 並按 F4 或在右側單擊 lightining 圖示。

StackOverflow 文件

Visual Studio 將生成 listBox1_SelectedIndexChanged 到程式碼隱藏。

 private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            int Index = listBox1.SelectedIndex;
            label1.Text = Index.ToString();
        }

SelectedIndex_Changed 的結果; (底部的標籤將顯示每個所選專案的索引)

http://i.stack.imgur.com/PmRzA.gif

SelectedValue_Changed; (資料來源與頂部相同,你可以像 SelectedIndex_Changed 一樣生成此事件)

private void listBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            label1.Text = listBox1.SelectedValue.ToString();
        }

輸出 ;

http://i.stack.imgur.com/zALoY.gif