是否可以在 aspx 上使用不同的数据填充相同的用户控件?

Is it possible to populate same user control with different data on aspx?

我正在网上寻找这个,但没有得到任何合适的答案。这是我的问题:

我有一个网络用户控件,它有以下三个控件

<asp:RadioButtonList ID="RadioButtonList1" runat="server"     AutoPostBack="true" 
CssClass="radioButton" RepeatDirection="Horizontal" RepeatLayout="Flow" 
onselectedindexchanged="RadioButtonList1_SelectedIndexChanged" >
    <asp:ListItem Value="UET111">Use Existing</asp:ListItem>
    <asp:ListItem Value="CNT111">Create New</asp:ListItem>
</asp:RadioButtonList>

<asp:DropDownList ID="DropDownList1" runat="server" >
</asp:DropDownList>
<asp:TextBox ID="TextBox1" runat="server" C></asp:TextBox>

它是隐藏的代码

 protected void Page_Load(object sender, EventArgs e)
    {
        DropDownList1.Visible = false;
        TextBox1.Visible = false;
    }

    protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (RadioButtonList1.SelectedItem.Value == "UET")
        {
            DropDownList1.Visible = true;
            TextBox1.Visible = false;
        }
        else if (RadioButtonList1.SelectedItem.Value == "CNT")
        {
            DropDownList1.Visible = false;
            TextBox1.Visible = true;
        }
    }

现在我的问题- 实际上我在同一个 aspx 页面上使用了这个 web 控件 5 次。问题是我想从 aspx 页面填充下拉列表,每个下拉列表都有不同的数据(因为我有 5 个用户控件)。

可以吗?请帮助我解决这些问题,如果有人知道更好的方法,请告诉我。

在您的用户控件中创建一个 public 函数,允许您发送数据源供下拉列表填充,如果您还想绑定。

public BindDropdownDataSource(DataSet dataSource)
{
    DropDownList1.DataSource = dataSource;
    DropDownList1.DataBind();
}