用到到的WPF的三层架构,先在数据库写好存储过程为查询数据做好准备,再到服务器创建服务,之后到客户端写好方法调用
先写好两个查询语句:
--(下拉框) 城市
IF(@type='Select_BS_ChengShi')
BEGIN
SELECT RTRIM(ChengShiID) AS ChengShiID,
RTRIM(ChengShiName) AS ChengShiName
FROM BS_ChengShi
union
Select 0,'---请选择---' from BS_ChengShi
END
--(下拉框) 区域
IF(@type='Select_BS_DiYUID')
BEGIN
SELECT RTRIM(DiYUID) AS DiYUID,
RTRIM(DiYUName) AS DiYUName
FROM BS_DiYUID
WHERE ChengShiID=@ChengShiID
union
Select 0,'---请选择---' from BS_DiYUID
END
客户端代码:
[OperationContract]//查询分公司信息
public DataSet User_SelectEnterprise()
{
SqlParameter[] SQLSEOne = { new SqlParameter("@type", SqlDbType.Char), };
SQLSEOne[0].Value = "User_Select_BS_Enterprise";
DataTable myDateTable = myDALMethod.QueryDataTable("User_Enterprise", SQLSEOne);
DataSet myDataTaSet = new DataSet();
myDataTaSet.Tables.Add(myDateTable);
return myDataTaSet;
}
[OperationContract]//查询分公司信息
public DataSet XXUser_SelectEnterprise()
{
SqlParameter[] SQLSEOne = { new SqlParameter("@type", SqlDbType.Char), };
SQLSEOne[0].Value = "XXUser_Select_BS_Enterprise";
DataTable myDateTable = myDALMethod.QueryDataTable("User_Enterprise", SQLSEOne);
DataSet myDataTaSet = new DataSet();
myDataTaSet.Tables.Add(myDateTable);
return myDataTaSet;
}
客户端后台代码:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
#region 绑定城市下拉框
DataTable dtChengShi = myClient.Select_BS_ChengShi().Tables[0];
cbo_ChengShi.ItemsSource = dtChengShi.DefaultView;
cbo_ChengShi.SelectedValuePath = "ChengShiID";
cbo_ChengShi.DisplayMemberPath = "ChengShiName";
#endregion
}
//城市改变下拉框(绑定地域)
private void cbo_BS_DiYUID(object sender, SelectionChangedEventArgs e)
{
int intID = Convert.ToInt32(cbo_ChengShi.SelectedValue);
if (intID > 0)
{
#region 下拉框员工类型
DataTable dt = myClient.Select_BS_DiYu(intID).Tables[0];
cbo_DiYuID.ItemsSource = dt.DefaultView;
cbo_DiYuID.SelectedValuePath = "DiYUID";
cbo_DiYuID.DisplayMemberPath = "DiYUName";
#endregion
}
}
客户端前台代码:
其实是根据SelectionChanged事件来调用查询下拉框方法