WPF combobox數據綁定和數據獲取


本文章僅為個人學習,如有錯誤之處請指正。

搭建WPF界面的時候,想用combobox構建一個下拉菜單,搜索的時候看到大多數都是大段代碼,邏輯順序不是很詳細,摸索了大概,記錄一下方便來者。

拖入combobox控件,控件的屬性可以在xmal代碼中更改,這里只是用了默認的代碼,combobox的綁定在.cs代碼中進行。

 <Label Content="Label" Height="28" HorizontalAlignment="Left" Margin="12,239,0,0" Name="label8" VerticalAlignment="Top" />
        <ComboBox Height="23" HorizontalAlignment="Left" Margin="130,239,0,0" Name="My_combobox" VerticalAlignment="Top" Width="120" ItemsSource="{Binding}" SelectionChanged="comboBox1_SelectionChanged" DataContext="{Binding}"></ComboBox>
        <TextBox Height="23" HorizontalAlignment="Left" Margin="130,301,0,0" Name="textBox8" VerticalAlignment="Top" Width="120" TextChanged="textBox8_TextChanged" />

combobox幾個相關的屬性:

 ItemSource一般綁定list

 

先定義類

    public class drop_down_list
    {
        public string Name { get; set; }
        public int ID { get; set; }
        public int IDS { get; set; }
    }

然后構建list

            List<drop_down_list> Drop_down_f_g = new List<drop_down_list>();
            Drop_down_f_g.Add(new drop_down_list { Name = "up_up", ID = 0, IDS = 1 });
            Drop_down_f_g.Add(new drop_down_list { Name = "one_up", ID = 1, IDS = 2 });
            Drop_down_f_g.Add(new drop_down_list { Name = "five_up", ID = 2, IDS = 3 });
            Drop_down_f_g.Add(new drop_down_list { Name = "ten_up", ID = 3, IDS = 4 });
            Drop_down_f_g.Add(new drop_down_list { Name = "fifteen_up", ID = 4, IDS = 5 });
            Drop_down_f_g.Add(new drop_down_list { Name = "fifteen_down", ID = 5, IDS = 6 });
            Drop_down_f_g.Add(new drop_down_list { Name = "twentyfive_up", ID = 6, IDS = 7 });
            Drop_down_f_g.Add(new drop_down_list { Name = "thirty_down", ID = 7, IDS = 8 });
            Drop_down_f_g.Add(new drop_down_list { Name = "fourty_down", ID = 8, IDS = 9 });

綁定combobox的數據源

            My_combobox.ItemsSource = Drop_down_f_g;
            My_combobox.DisplayMemberPath = "Name";
            My_combobox.SelectedValuePath = "IDS";
            My_combobox.SelectedIndex = 0;

list的初始化和combobox我都是在mainwindow中進行的

通過comboBox的changed函數實現數據獲取

        private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            string test;
            object a;
            a = My_combobox.SelectedValue;
            test = a.ToString();
            textBox8.Text = test;    
        }

 

 獲取到name對應的ID.

交流分享,共同進步!

 

 

 

 

 

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM