我有一个禁用的面板。因此,面板内的所有控件都被禁用。在Postback上我需要只启用一个禁用面板内的控件。请告诉我们如何实现这一目标。以下是代码
<asp:Panel ID="testPanel" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:DropDownList ID="dropdownlist" runat="server"></asp:DropDownList>
</asp:Panel>
Codebehind aspx.cs
testpanel.Enabled = false;
dropdownlist.Enavbled=true;
此处下拉列表未启用。 请让我知道一种启用它的方法。迭代面板是一种表现,因为我内部有很多控件。所以我需要一种更好的方法来在禁用面板中启用DropDownList。
答案 0 :(得分:1)
您无法在已禁用的容器控件中启用单个控件,因为that property是继承的(与Visible
相同)。所以唯一的方法是启用Panel
和此控件,但禁用面板中的所有其他控件。
dropdownlist.Enabled = true;
testpanel.Enabled = dropdownlist.Enabled;
// disable all other controls in the panel
TextBox1.Enabled = false;
MSDN:
此属性沿控件层次结构向下传播。如果你禁用了 容器控件,该容器内的子控件也是 禁用。有关更多信息,请参阅
IsEnabled
属性。