如何访问c#中usercontrol内部控件的数据



我动态添加了一个包含下拉列表的用户控件。加载用户控件会根据条件重复"I"次。现在,我需要访问下拉列表的选定项目。我创建了一个访问器函数来获取下拉列表中选定的值,但它给了我默认值,即下拉列表的"00"。

如果有人需要其他信息来解决我的问题,请问我。

动态添加用户控制:

for (int i = 0; i < 3; i++)
    {
     //DailyControl is a userControl
      DailyControl w1 = (DailyControl)LoadControl("~/DailyControl.ascx");
     //InputPanel is a panel where user control is added.                   
       InputPanel.Controls.Add(w1);
    }

DailyControl.ascx

Select the Time:

<asp:DropDownList ID="clock" runat="server">
        <asp:ListItem Text="am" />
        <asp:ListItem Text="pm" />
    </asp:DropDownList>

DailyControl.ascx.cs//用于获取下拉的访问器函数

public string Clock
{
    get
    {
        return clock.SelectedItem.Text.ToString();
    }
}

您可以在aspx页面上使用Repeater,而不是常规添加控件。在Repeater中,您可以绑定DropDownList(或包含DropDownList的控件)并获得

myDropDownList.SelectedValue

(或SelectedItem)

最新更新