使用GridView asp设置更新面板的异步触发器:ButtonField

问题描述:

什么是正确的sytnax用于设置AsyncPostBackTriggerUpdatePanelasp:ButtonFieldGridView控件?使用GridView asp设置更新面板的异步触发器:ButtonField

我需要为每个ASP设置 'AsyncPostBackTrigger':在ButtonField字段我GridView

这里是我的源代码

<asp:UpdatePanel ID="MyUpdatePanel" runat="server" ChildrenAsTriggers="true" UpdateMode="Conditional"> 
    <Triggers> 
    </Triggers> 
    <ContentTemplate> 
     <asp:GridView ID="MyGridView" runat="server" AutoGenerateColumns="false">  
      <Columns>   
       <asp:ButtonField ButtonType="Link" CommandName="Button1" SelectText="Click Me!" />   
       <asp:ButtonField ButtonType="Link" CommandName="Button2" SelectText="No Click Me!" />  
      </Columns> 
     </asp:GridView> 
    </ContentTemplate> 
</asp:UpdatePanel> 

更新

我需要保持UpdateModeChildrenAsTriggers属性设置为true,因为我有UpdatePanel中包含的其他按钮不会刷新UpdatePanel控制

将ChildrenAsTriggers属性设置为true将导致任何控制,导致更新面板内的回发导致其刷新。如果您希望使用触发刷新更新面板的更新面板之外的控件,则只需使用触发器元素。在这个例子中你甚至不需要触发器元素。兰斯哈珀提到

+0

查看发送给Josh的注释 – 2009-06-03 21:06:20

一切都是真实的,但你还需要删除以下属性:

UpdateMode="Conditional" 

具有地方会阻止客户端事件的自动线了该属性。基本上,你告诉ASP.Net你将自己做这件事。

+0

我想将条件属性设置为true,因为面板中的按钮不会导致UpdatePanel刷新。 – 2009-06-03 21:05:10

您可以使用模板字段而不是命令字段,并强制更新(UpdatePanel.Update())面板时单击命令按钮?

+0

我有错误的代码示例。它应该是一个asp:ButtonField列而不是asp:CommandField列。我更新了我的代码示例 – 2009-06-03 21:53:02