SilverLight 學習筆記一之ComboBox

1,ComboBox簡單 綁定

 <ComboBox Grid.Row="1" Grid.Column="3"  Height="20" HorizontalAlignment="Left"  VerticalAlignment="Top" Name="lstSex" Width="100" Margin="5,4,0,0" SelectedIndex="0">
    <ComboBoxItem Content="先生" />
    <ComboBoxItem Content="女士" />
</ComboBox>

2,ComboBox數據綁定

2.1 xmal

<ComboBox Grid.Row="0" Grid.Column="3" Height="20" HorizontalAlignment="Left"  VerticalAlignment="Top" Name="Comb1" Width="100" Margin="5,8,0,0">
</ComboBox>

2.2 數據源

public class Student
{
    public string Name
    {
        set;
        get;
    }
}

public class Students
{
    public List<Student> StudentList
    {
        set;
        get;
    }
	
    public List<Student> getStudent()
    {
        StudentList= new List<Student>  
            {
                new Student(){Name="X1"},
                new Student(){Name="X2"},
                new Student(){Name="X3"}
            };
        return StudentList;
    }
}

2.2 後臺代碼

private void BindStudent()
{
    Comb1.ItemsSource = new Students().getStudent();
    Comb1.DisplayMemberPath = "Name";
}

3  ComboBox賦值

3.1 ComboBox的Items處於固定的狀態

Comb1.ItemsSource = new Students().getStudent();
switch (userModel.UserDepartment )
{
    case "X1":
        this.Comb1 .SelectedIndex =0;
        break;
    case "X2":
        this.Comb1 .SelectedIndex =1;
        break;                    
    case "X3":
        this.Comb1 .SelectedIndex =2;
        break;                                    
}

3.2  當ComboBox的Items時時處於變化的狀態

到數據庫查詢到student.Name,Name可能隨時被修改

foreach(Student item in Comb1.Items)
{
    if(item.Name == student.Name)
     {
        Comb1.SelectedItem = item;
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章