开发工具与关键技术:Visual Studio
今天写一个绑定下拉框,我们先来写一个ComboBox,
<ComboBox x:Name="cbo_fz" Height="24" Width="170" IsEditable="False" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="16" Padding="2 1 2 0" Margin="173,148,0,0" Foreground="#777777"/>
给它一个x:Name以用来绑定数据,
在数据库写存储过程,
USE [Logistics]
GO
/****** Object: StoredProcedure [dbo].[Consignment] Script Date: 2019/08/18 08:07:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[Consignment]
@type nvarchar(200)=''
AS
BEGIN
--查询发站下拉框
IF(@type='Loaded_Cbo_Fz')
SELECT Send_out_ID, Send_out
FROM Send_out_Table
union
Select 0,'---请选择---' from Send_out_Table
END
写完存储过程然后执行一下,如下图,能查出数据即可;
然后在服务端连接存储过程,
[OperationContract] //查询发站
public DataSet Loaded_Cbo_Fz()
{
SqlParameter[] SQLCMDpas ={ new SqlParameter ("@type",SqlDbType.NVarChar),};
SQLCMDpas[0].Value = "Loaded_Cbo_Fz";
DataTable myDataTable = myDALMethod.QueryDataTable("Consignment", SQLCMDpas);
DataSet myDataSet = new DataSet();
myDataSet.Tables.Add(myDataTable);
return myDataSet;
}
在客户端绑定数据,
先实例化一下,
BLL.Child_nodes.Consignment.ConsignmentClient myClient = new BLL.Child_nodes.Consignment.ConsignmentClient();
然后在页面加载事件里面写绑定,
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
#region 绑定发站
DataTable dtfz = myClient.Loaded_Cbo_Fz().Tables[0];
cbo_fz.ItemsSource = dtfz.DefaultView;
cbo_fz.DisplayMemberPath = "Send_out";
cbo_fz.SelectedValuePath = "Send_out_ID";
#endregion
}
查询下拉框完成。