我在互联网上寻找这个,但我没有得到任何合适的答案。这是我的问题:
我有一个Web用户控件,它有以下三个控件
<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个用户控件)。
有可能吗?请帮助我,让我知道是否有人知道更好的方法。
答案 0 :(得分:1)
在您的用户控件中创建一个公共函数,该函数允许您发送DataSource以便从下拉列表中填充,以及是否还需要绑定。
public BindDropdownDataSource(DataSet dataSource)
{
DropDownList1.DataSource = dataSource;
DropDownList1.DataBind();
}