私は以前にこの質問を見たことがありますが、どの答えも私にはうまくいかないようです。これは私のupdatePanelセクション(hi.ascx内)です:
<asp:UpdatePanel runat="server" ID="upUL" UpdateMode="Conditional" >
<ContentTemplate>
..。
<Angel:Pager id="pager" runat="server" OnPageClicked="Pager_PageSelected" />
<!--End of control div-->
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="lbBlock" />
<asp:AsyncPostBackTrigger ControlID="lbUnblock" />
<asp:AsyncPostBackTrigger ControlID="pager" EventName="PageClicked" />
</Triggers>
</asp:UpdatePanel>
これがPager.ascx.vb内のコードです。
Public Delegate Sub ClickPage(sender As Object, e As PageClickedEventArgs)
Public Event PageClicked As ClickPage
Public Class PageClickedEventArgs
Inherits EventArgs
Public Property PageNumber() As Integer
End Class
...。
Protected Sub rpPaging_Click(ByVal sender As Object, ByVal e As CommandEventArgs)
Dim pageNum As Integer
Integer.TryParse(e.CommandArgument.ToString(), pageNum)
If (pageNum <> 0) Then
Dim args As New PageClickedEventArgs
args.PageNumber = pageNum
RaiseEvent PageClicked(sender, args)
End If
'SelectNewPage(pageNum)
End Sub
そして最後に、これはhi.ascx.vbページの私のコードです。
Public Sub Pager_PageSelected(sender As Object, ByVal e As Paging.PageClickedEventArgs)
BindData(False, e.PageNumber)
End Sub
タイトルで述べたように。pager.ascxからイベントを発生させると、完全なポストバックが発生します(うまく機能しますが、Ajaxに入れたかったのです)。
lbBlockやlbUnblockなど、この更新パネル内の他のコントロール(LinkButtons)は正常に機能しており、完全なポストバックを引き起こしていません。
助けてください。私はそれにあまりにも多くの時間を費やしました、そして何もうまくいかないようです!
ありがとう、
蘭