当前位置: 代码迷 >> ASP.NET >> GridView中动态显示或隐藏某行中的控件解决方法
  详细解决方案

GridView中动态显示或隐藏某行中的控件解决方法

热度:2026   发布时间:2013-02-25 00:00:00.0
GridView中动态显示或隐藏某行中的控件
请问如何动态的显示或隐藏某行中的控件。现在设置控件的visible属性或者TableCell的display属性都行不通。请问是什么原因或者如果解决这个问题。

------解决方案--------------------------------------------------------
//WebUserControl.ascx.cs
HTML code
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %><asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">    <ContentTemplate>        <asp:DropDownList runat="server" ID="DropDownList1"     onselectedindexchanged="DropDownList1_SelectedIndexChanged"     AutoPostBack="true" >            <asp:ListItem Value="1">Item 1</asp:ListItem>            <asp:ListItem Value="2">Item 2</asp:ListItem>            <asp:ListItem Value="3">Item 3</asp:ListItem>            <asp:ListItem Value="其它">其它</asp:ListItem>        </asp:DropDownList>        <asp:TextBox ID="TextBox1" runat="server" Visible="false" />    </ContentTemplate></asp:UpdatePanel>
------解决方案--------------------------------------------------------
也就是说DropDownList和TextBox都放在UserControl里。根据选项隐藏或显示的处理代码也放到UserContrl的.cs里。

为了尽量避免闪烁,给UserControl套一个UpdatePanel,且设置UpdateMode为Conditional.

然后在主页面放置一个ScriptManager, 在TemplateField里放置UserControl.

  相关解决方案