private async void Button_Click(object sender, RoutedEventArgs e) { if (this.ProvinceComboBox.SelectedIndex < 0) { MessageBox.Show("请选择省份和城市"); return; } string urlcode = this.ProvinceComboBox.SelectedValue.ToString() + "/" + this.AreaComboBox.SelectedValue.ToString() + ".html"; if (m_MainWindow.EarthquakeTempPanel.Tag.Equals(2)) { m_MainWindow.EarthquakeTempPanel.Visibility = Visibility.Collapsed; } m_MainWindow.WeatherTempPanel.Visibility = Visibility.Visible; EnArea area = this.AreaComboBox.SelectedItem as EnArea; await m_MainWindow.ShowWeather(area.ID, area.AreaName, urlcode); this.Close(); }
/// <summary> /// 根据省份ID通过异步方法获取所有地区信息 /// </summary> /// <param name="ID">省份ID</param> /// <returns></returns> private static async Task <List <EnArea> > QueryAreaFromDBAsync(int ID) { List <EnArea> areas = new List <EnArea>(); EnArea area; string sql = "select * from Area where ProvinceID=" + ID + " order by AreaName"; DataSet ds = db.ReturnDataSet(sql); DataTable dt = ds.Tables[0]; for (int i = 0; i < dt.Rows.Count; i++) { area = new EnArea(); area.ID = int.Parse(dt.Rows[i]["ID"].ToString()); area.ProvinceID = int.Parse(dt.Rows[i]["ProvinceID"].ToString()); area.AreaID = dt.Rows[i]["AreaID"].ToString(); area.AreaName = dt.Rows[i]["AreaName"].ToString(); area.AreaCode = dt.Rows[i]["AreaCode"].ToString(); areas.Add(area); } return(areas); }