Установка MaxLength в TextBox в зависимости от выбора DropDownList?

У меня есть TextBox, который отображается в зависимости от выбора в DropDownList. Поведение текстового поля по умолчанию - Visible="false". Значение MaxLength должно меняться в зависимости от выбора в DropDownList. Обратите внимание, что иногда TextBox не отображается.

Я предоставил разметку ниже.

<asp:updatepanel id="updatePanel" runat="server" childrenastriggers="false" updatemode="Conditional" rendermode="Inline">
 <contenttemplate>
 <asp:dropdownlist id="ddlList" runat="server" autopostback="true" onselectedindexchanged="ddlList_SelectedIndexChanged">
 </asp:dropdownlist>
 
 </contenttemplate>
 <triggers>
 <asp:asyncpostbacktrigger controlid="ddlList">
 </asp:asyncpostbacktrigger></triggers>
 </asp:updatepanel>

Я все еще работаю над тем, чтобы решить эту проблему, но можно ли сохранить значение MaxLength в DropDownList, а затем в коде позади использовать это значение для установки MaxLength в TextBox? Поскольку у меня есть раскрывающийся список в UpdatePanel, и я использую AutoPostBack, кажется, что это должно быть возможно, но я не знаю, как/где значение может быть сохранено.

1 ответ

Ага. Вы можете сделать это.

void Page_Load()
{
 tbOther.MaxLength = Int32.Parse(ddlList.SelectedValue);
}

Значение автоматически сохраняется на странице ViewState, поэтому вам не нужно об этом беспокоиться.

licensed under cc by-sa 3.0 with attribution.