今天写个级联省市区的ListPicker,想根据SelectionChanged来动态改变
可是一直报错rgumentOutOfRangeException
InitializeComponent();
province.ItemsSource=GetItem("","");
city.ItemsSource = GetItem("北京市", "");
area.ItemsSource = GetItem("北京市", "北京市");
//以下是级联省市区
private void province_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
province1=e.AddedItems[0].ToString();
List<string> list=GetItem(province1,"");
list.TrimExcess();//出去list中的null
city.ItemsSource = list;
}
private void city_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
city1=e.AddedItems[0].ToString();
area.ItemsSource=GetItem(province1,city1);
}
private void area_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
// TODO: Add event handler implementation here.
}
后拉发现,ItemsSource进行绑定时会触发SelectionChanged事件
结果是绑定完province后province_SelectionChanged()执行导致city的ItemsSource改变