1

我已经完成了一些经典的 ASP,但对 ASP.NET 来说真的很新,所以如果可以的话,请给我一些步骤。

我尝试做的是在不同页面上的多个表单中重复使用相同的下拉列表代码。

我有 Form1.aspx 页面,它有:

<asp:DropDownList ID="Vendor" runat="server" 
AutoPostBack="True" 
onselectedindexchanged="ddlVendor_SelectedIndexChanged">
</asp:DropDownList>

然后文件 Form1.aspx.cs 页面后面的代码有这个来构建供应商下拉框的列表。

private void FillVendor()
{
    string strConn = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    SqlConnection con = new SqlConnection(strConn);
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = con;
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = "SELECT VendorID, VendoName FROM Vendor";
    DataSet objDs = new DataSet();
    SqlDataAdapter dAdapter = new SqlDataAdapter();
    dAdapter.SelectCommand = cmd;
    con.Open();
    dAdapter.Fill(objDs);
    con.Close();
    if (objDs.Tables[0].Rows.Count > 0)
    {
        Vendor.DataSource = objDs.Tables[0];
        Vendor.DataTextField = "VendorName";
        Vendor.DataValueField = "VendorID";
        Vendor.DataBind();
        Vendor.Items.Insert(0, "--Select--");
    }
    else
    {
        lblMsg.Text = "No Vendor found";
    }


}

假设我有另一个 form2.aspx 页面和 form2.aspx.cs 页面。此页面将使用与 form1.aspx 页面相同的下拉列表。我不想在 form2.aspx 和 form2.aspx.cs 中再次重写相同的代码。有没有更好的方法来跨多个页面重复使用这些代码?

提前致谢,

4

1 回答 1

0
  1. 您可以为自定义下拉列表创建用户控件
  2. 您可以编写接受 DropdownList 的方法,将标签作为参数,然后设置属性。
于 2012-10-03T16:31:48.003 回答