1. 程式人生 > >WPF和winform區別 combobox 填充list例子

WPF和winform區別 combobox 填充list例子

代碼 active post per add iat back box --

區別:

var deviceEnum = new MMDeviceEnumerator();
var devices = deviceEnum.EnumerateAudioEndPoints(DataFlow.Capture, DeviceState.Active).ToList();
combDevice.ItemsSource = devices;//wpf

combDevice.DataSource = devices;//WINFORM

------

comboBox1.DataSource = bindingSource1.DataSource;//WINFORM

生成ComboBox list代碼例子:
 1 List<string> list = new List<string>();
 2  BindingSource bsource=new BindingSource();
 3 
 4  //Set list dataSource
 5  bsource.DataSource = list;
 6  comboBox1.DataSource = bsource;
 7 
 8  //Now add an element via Binding object
 9  bsource.Add("One");
10  bsource.Add("
Two");

代碼例子2:
 1 public class Country
 2 {
 3     public string Name { get; set; }
 4     public IList<City> Cities { get; set; }
 5     public Country(string _name)
 6     {
 7         Cities = new List<City>();
 8         Name = _name;
 9     }
10 }
11 
12 
13 
14 List<Country> countries = new
List<Country> { new Country("UK"), 15 new Country("Australia"), 16 new Country("France") }; 17 18 bindingSource1.DataSource = countries; 19 20 comboBox1.DataSource = bindingSource1.DataSource; 21 22 comboBox1.DisplayMember = "Name"; 23 comboBox1.ValueMember = "Name";

 

Or you may try ArrayList.Adapter method that creates Adapter wrapper of IList.

ArrayList items;

items=ArrayList.Adapter(comboBox1.Items);
items.Add("one");


其他
ComboBox代碼:
 1   void Form1Load(object sender, EventArgs e)
 2         {
 3             List<string> myitems = new List<string>
 4             {
 5                 "Item 1",
 6                 "Item 2",
 7                 "Item 3"
 8             };
 9 
10             ComboBox box = new ComboBox();
11             box.Bounds = new Rectangle(10, 10, 100, 50);
12             source1.DataSource = myitems;
13             box.DataSource = source1;
14 
15             ComboBox box2 = new ComboBox();
16             box2.Bounds = new Rectangle(10, 80, 100, 50);
17             source2.DataSource = myitems;
18             box2.DataSource = source2;
19 
20             Controls.Add(box);
21             Controls.Add(box2);
22         }

ref:

https://stackoverflow.com/questions/600869/how-to-bind-a-list-to-a-combobox-winforms

https://stackoverflow.com/questions/482/winforms-combobox-data-binding-gotcha

其他區別:

private void btIATstop_Click(object sender, EventArgs e)

private void btnStop_Click(object sender, RoutedEventArgs e) //WPF

 
 

WPF和winform區別 combobox 填充list例子