如何启用类似下拉列表的控件,该控件位于已禁用的面板内

时间:2015-02-02 12:15:38

标签: c# asp.net code-behind

我有一个禁用的面板。因此,面板内的所有控件都被禁用。在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。

1 个答案:

答案 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属性。