【问题标题】:How to dynamically replace one set of server controls with another in asp.net webforms如何在asp.net webforms中动态替换一组服务器控件
【发布时间】:2013-02-27 19:23:46
【问题描述】:

我正在处理 asp.net 网络表单。我有一个用户控件,它有几个服务器控件。有三个相关的下拉框。如果所有这些下拉框中有多个值,我必须让用户从中选择值,然后将它们保存在数据库中。如果它们中的每一个只有一个值,那么我必须将这些值显示为只读 - 例如 asp.net 标签。这些值也需要保存在数据库中。请告诉我如何将一组控件替换为另一组并获取它们的值。

谢谢

【问题讨论】:

  • 您可以将下拉列表显示为只读而不给它们添加标签 - 这可以满足您的要求吗?
  • 很遗憾没有!用户说他们无法阅读灰显的控件:(

标签: c# asp.net


【解决方案1】:

因此,要显示一组控件而不是另一组,请考虑以下 HTML:

<asp:DropDownList ID="List1" runat="server" Visible="false" />
<asp:DropDownList ID="List2" runat="server" Visible="false" />
<asp:DropDownList ID="List3" runat="server" Visible="false" />
<asp:Label ID="Label1" runat="server" Visible="false" />
<asp:Label ID="Label2" runat="server" Visible="false" />
<asp:Label ID="Label3" runat="server" Visible="false" />

如果您希望下拉列表可见,请在相关的代码隐藏中运行:

List1.Visible = true;
List2.Visible = true;
List3.Visible = true;

相反,如果您希望标签可见,请运行以下代码:

Label1.Visible = true;
Label2.Visible = true;
Label3.Visible = true;

请注意,当 ASP.NET 中的控件可见时 - 它呈现。所以控件包含在 HTML 中。这就是为什么我一开始就将所有设置为不可见。

【讨论】:

    猜你喜欢
    • 2011-05-16
    • 1970-01-01
    • 1970-01-01
    • 2015-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-24
    • 1970-01-01
    相关资源
    最近更新 更多