LinkBut​​ton的不烧OnClick事件在手风琴 [英] LinkButton not firing OnClick event in Accordion

查看:126
本文介绍了LinkBut​​ton的不烧OnClick事件在手风琴的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直没能拿到破发点我有LinkBut​​tonDelete_Click火。有一招对付AJAX手风琴里面的按钮?谢谢你。

 < CC1:手风琴ID =Accordion1=服务器的DataSourceID =ObjectDataSource1
   的SelectedIndex = -  1RequireOpenedPane =假>
     < HeaderTemplate中>
        < ASP:标签ID =LabelDisplayName=服务器文本='<%#绑定(名字)%
          >'>< / ASP:标签>
     < / HeaderTemplate中>
     <的ContentTemplate>
        < ASP:LinkBut​​ton的ID =LinkBut​​tonDelete=服务器
           的OnClick =LinkBut​​tonDelete_Click文本=删除>< / ASP:LinkBut​​ton的>
        ...
     < /的ContentTemplate>
 < / CC1:手风琴>

公用Sub LinkBut​​tonDelete_Click(BYVAL发件人为对象,BYVAL E上EventArgs的)
昏暗的按钮作为的LinkBut​​ton = CTYPE(发件人的LinkBut​​ton)
...
结束小组
 

使用ItemCommand事件:

 < CC1:手风琴ID =Accordion1=服务器的DataSourceID =ObjectDataSource1
 的SelectedIndex = -  1RequireOpenedPane =假>
 < HeaderTemplate中>
    < ASP:标签ID =LabelDisplayName=服务器文本='<%#绑定(名字)%
      >'>< / ASP:标签>
 < / HeaderTemplate中>
 <的ContentTemplate>
    < ASP:LinkBut​​ton的ID =LinkBut​​tonDelete=服务器
       命令名称=删除文本=删除>< / ASP:LinkBut​​ton的>
    ...
 < /的ContentTemplate>
< / CC1:手风琴>

私人小组Accordion1_ItemCommand(BYVAL发件人为对象,BYVAL E上
   System.Web.UI.WebControls.CommandEventArgs)把手Accordion1.ItemCommand
    如果e.CommandName =删除然后
        做的东西
    结束如果
结束小组
 

解决方案

这确实是一个错误,并已部分修复AJAX控件工具包版本3.0.31106.0。另外一个步骤是必要因为某些原因(其他人似乎并不需要这一步?)。我要重新进行数据绑定手风琴在页面加载每一次和现在的作品完美。

I have not been able to get the break point I have on LinkButtonDelete_Click to fire. Is there a trick to dealing with buttons inside of AJAX Accordions? Thank you.

<cc1:Accordion ID="Accordion1" runat="server" DataSourceID="ObjectDataSource1"
   SelectedIndex="-1" RequireOpenedPane="false">
     <HeaderTemplate>
        <asp:Label ID="LabelDisplayName" runat="server" Text='<%#Bind("FirstName") %  
          >'></asp:Label>
     </HeaderTemplate>
     <ContentTemplate>
        <asp:LinkButton ID="LinkButtonDelete" runat="server" 
           OnClick="LinkButtonDelete_Click" Text="Delete"></asp:LinkButton>
        ...
     </ContentTemplate>
 </cc1:Accordion>

Public Sub LinkButtonDelete_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim button As LinkButton = CType(sender, LinkButton)
...
End Sub

Using the ItemCommand Event:

<cc1:Accordion ID="Accordion1" runat="server" DataSourceID="ObjectDataSource1" 
 SelectedIndex="-1" RequireOpenedPane="false"> 
 <HeaderTemplate> 
    <asp:Label ID="LabelDisplayName" runat="server" Text='<%#Bind("FirstName") %   
      >'></asp:Label> 
 </HeaderTemplate> 
 <ContentTemplate> 
    <asp:LinkButton ID="LinkButtonDelete" runat="server"  
       CommandName="Remove" Text="Delete"></asp:LinkButton> 
    ... 
 </ContentTemplate> 
</cc1:Accordion> 

Private Sub Accordion1_ItemCommand(ByVal sender As Object, ByVal e As     
   System.Web.UI.WebControls.CommandEventArgs) Handles Accordion1.ItemCommand
    If e.CommandName = "Remove" Then
        'Do stuff
    End If
End Sub

解决方案

This is indeed a bug and has been partially fixed in AJAX Control Toolkit Version 3.0.31106.0. An additional step is necessary for some reason (other people seem to not need this step??). I have to re-databind the accordion on page load every single time and it now works flawlessly.

这篇关于LinkBut​​ton的不烧OnClick事件在手风琴的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆