[]
Bind MultiSelect for WPF control to a list of complex data objects which can have multiple properties. To bind the control to a list of data objects, follow these steps:
In XAML Design, drag and drop the C1MultiSelect control from the toolbox onto the window.
Create a class named Customer using the following code:
public class Customer
{
string name;
string customerID;
string mobile;
string email;
public Customer(string _name, string _custId, string _mobile, string _email)
{
this.name = _name;
this.customerID = _custId;
this.mobile = _mobile;
this.email = _email;
}
public string Name
{
get
{
return name;
}
}
public string CustomerID
{
get
{
return customerID;
}
}
public string Mobile
{
get
{
return mobile;
}
}
public string Email
{
get
{
return email;
}
}
}
Add objects of Customer class to a BindingList and set C1MultiSelect’s ItemsSource and DisplayMemberPath properties using the following code:
public BindingList<Customer> customers;
public ObjectCollectionBinding()
{
InitializeComponent();
Loaded += OnLoaded;
}
private void OnLoaded(object sender, RoutedEventArgs e)
{
customers = new BindingList<Customer>(); // initializing binding source
customers.Add(new Customer("John", "C001", "8888832141", "john@gmail.com"));
customers.Add(new Customer("Alex", "C002", "8888832142", "@gmail.com"));
customers.Add(new Customer("Shawn", "C003", "8888832143", "shawn@gmail.com"));
customers.Add(new Customer("Sam", "C004", "8888832144", "sam@gmail.com"));
customers.Add(new Customer("Neo", "C005", "8888832145", "neo@gmail.com"));
customers.Add(new Customer("Paul", "C006", "8888832146", "paul@gmail.com"));
multiSelect.ItemsSource = customers; // setting items source
multiSelect.DisplayMemberPath = "Name"; // setting display member path
}