I am using 2 RadButtons to search for a (Host or Victim) student then load 2 Radgrids via ajax.
I am pre populating the search criteria txtFirstName with "Cor" and txtLastName with "A".
This returns 5 rows from my DB.
When the Radgrids bind the ajax fires correctly and I can compare the 2 Students below.
In the Other radgrids that hold additional information.
If I change my search criteria to something else that will return more rows to the RadGrid.
The ajax is only firing for the first 5 rows.
If I swap out my 2 search RadButtons with regular ASP:Buttons and fire a post back to bind the 2 SearchRadGrids then all the rows are able to fire the ajax correctly.
any help is appreciated? Thanks
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
/>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
DefaultLoadingPanelID
=
"RadAjaxLoadingPanel1"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnHostSearch"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"hostSearchGrid"
LoadingPanelID
=
"hostSearchLoadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"btnVictimSearch"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"victimSearchGrid"
LoadingPanelID
=
"victimSearchLoadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"hostSearchGrid"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"hostStudentInfoGrid"
LoadingPanelID
=
"hostStudentInfoLoadingPanel"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"hostSchoolInfoGrid"
LoadingPanelID
=
"hostSchoolInfoLoadingPanel"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"hostAdmissionInfoGrid"
LoadingPanelID
=
"hostAdmissionInfoLoadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"victimSearchGrid"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"victimStudentInfoGrid"
LoadingPanelID
=
"victimStudentInfoLoadingPanel"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"victimSchoolInfoGrid"
LoadingPanelID
=
"victimSchoolInfoLoadingPanel"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"victimAdmissionInfoGrid"
LoadingPanelID
=
"victimAdmissionInfoLoadingPanel"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<%--Loading Panels--%>
<
telerik:RadAjaxLoadingPanel
ID
=
"hostSearchLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"victimSearchLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"hostStudentInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"hostSchoolInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"hostAdmissionInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"victimStudentInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"victimSchoolInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxLoadingPanel
ID
=
"victimAdmissionInfoLoadingPanel"
runat
=
"server"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadFormDecorator
ID
=
"FormDecorator1"
runat
=
"server"
DecoratedControls
=
"Buttons"
>
</
telerik:RadFormDecorator
>
<
br
/>
<
telerik:RadAjaxPanel
ID
=
"RadAjaxPanel1"
runat
=
"server"
>
<
asp:Label
Text
=
"First Name:"
runat
=
"server"
></
asp:Label
>
<
asp:TextBox
ID
=
"txtFirstName"
runat
=
"server"
></
asp:TextBox
>
<
asp:Label
ID
=
"Label1"
Text
=
"Last Name:"
runat
=
"server"
></
asp:Label
>
<
asp:TextBox
ID
=
"txtLastName"
runat
=
"server"
></
asp:TextBox
>
<
telerik:RadButton
ID
=
"btnHostSearch"
runat
=
"server"
OnClick
=
"btnHostSearch_Click"
Font-Underline
=
"false"
Text
=
"Search for Host"
>
<
Icon
PrimaryIconCssClass
=
"rbSearch"
PrimaryIconLeft
=
"4"
PrimaryIconTop
=
"4"
/>
</
telerik:RadButton
>
<
telerik:RadButton
ID
=
"btnVictimSearch"
runat
=
"server"
OnClick
=
"btnVictimSearch_Click"
Font-Underline
=
"false"
Text
=
"Search for Victim"
>
<
Icon
PrimaryIconCssClass
=
"rbSearch"
PrimaryIconLeft
=
"4"
PrimaryIconTop
=
"4"
/>
</
telerik:RadButton
>
</
telerik:RadAjaxPanel
>
<
br
/>
<
h5
><%--Host Students--%></
h5
>
<
hr
/>
<
telerik:RadGrid
ID
=
"hostSearchGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
AllowSorting
=
"false"
GridLines
=
"None"
OnItemCommand
=
"hostSearchGrid_Click_ItemCommand"
OnNeedDataSource
=
"hostSearchGrid_NeedDataSource"
>
<
MasterTableView
AutoGenerateColumns
=
"true"
DataKeyNames
=
"StudentID"
>
<
Columns
>
<
telerik:GridTemplateColumn
UniqueName
=
"TemplateColumn1"
HeaderText
=
"Select"
>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
<
ItemTemplate
>
<
asp:ImageButton
ID
=
"ibtnAddToCart"
CommandName
=
"Compare"
runat
=
"server"
Height
=
25px
Width
=
25px
ImageUrl
=
"~/_Images/circle-up.png"
AlternateText
=
"Select"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
telerik:RadGrid
ID
=
"victimSearchGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
AllowSorting
=
"false"
GridLines
=
"None"
OnItemCommand
=
"victimSearchGrid_Click_ItemCommand"
OnNeedDataSource
=
"victimSearchGrid_NeedDataSource"
>
<
MasterTableView
AutoGenerateColumns
=
"true"
DataKeyNames
=
"StudentID"
>
<
Columns
>
<
telerik:GridTemplateColumn
UniqueName
=
"TemplateColumn1"
HeaderText
=
"Select"
AllowFiltering
=
"false"
>
<
ItemStyle
HorizontalAlign
=
"Center"
/>
<
ItemTemplate
>
<
asp:ImageButton
ID
=
"ibtnAddToCart"
runat
=
"server"
Height
=
25px
Width
=
25px
ImageUrl
=
"~/_Images/circle-up.png"
AlternateText
=
"Select"
CommandName
=
"Compare"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
br
/>
<
br
/>
<
h5
><%--Host Students--%></
h5
>
<
hr
/>
<
telerik:RadTabStrip
ID
=
"RadTabStrip1"
runat
=
"server"
Skin
=
"Outlook"
MultiPageID
=
"RadMultiPage1"
SelectedIndex
=
"0"
CssClass
=
"tabStrip"
>
<
Tabs
>
<
telerik:RadTab
Text
=
"Student Information"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"School Information"
>
</
telerik:RadTab
>
<
telerik:RadTab
Text
=
"Admission Information"
>
</
telerik:RadTab
>
</
Tabs
>
</
telerik:RadTabStrip
>
<
telerik:RadMultiPage
ID
=
"RadMultiPage1"
runat
=
"server"
SelectedIndex
=
"0"
CssClass
=
"multiPage"
>
<
telerik:RadPageView
ID
=
"RadPageView1"
runat
=
"server"
>
<
telerik:RadGrid
ID
=
"hostStudentInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
telerik:RadGrid
ID
=
"victimStudentInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
<
telerik:RadPageView
ID
=
"RadPageView2"
runat
=
"server"
CssClass
=
"pageViewEducation"
>
<
telerik:RadGrid
ID
=
"hostSchoolInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
telerik:RadGrid
ID
=
"victimSchoolInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
<
telerik:RadPageView
ID
=
"RadPageView3"
runat
=
"server"
>
<
telerik:RadGrid
ID
=
"hostAdmissionInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
telerik:RadGrid
ID
=
"victimAdmissionInfoGrid"
runat
=
"server"
AllowFilteringByColumn
=
"false"
AllowPaging
=
"false"
ShowFooter
=
"true"
AllowSorting
=
"false"
GridLines
=
"None"
PageSize
=
"5"
>
<
MasterTableView
AutoGenerateColumns
=
"True"
DataKeyNames
=
"StudentName"
>
<
NoRecordsTemplate
>
No Records Found.
</
NoRecordsTemplate
>
<
Columns
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
</
telerik:RadMultiPage
>
'General Controls
Protected txtFirstName, txtLastName As TextBox
Protected RadAjaxManager1 As RadAjaxManager
Protected WithEvents btnHostSearch, btnVictimSearch As RadButton
Protected WithEvents Button1 As Button
Protected WithEvents hostStudentInfoLoadingPanel, hostSchoolInfoLoadingPanel, hostAdmissionInfoLoadingPanel As RadAjaxLoadingPanel
' Host Grids
Protected WithEvents hostSearchGrid, hostStudentInfoGrid, hostSchoolInfoGrid, hostAdmissionInfoGrid As RadGrid
'Victim Grids
Protected WithEvents victimSearchGrid, victimStudentInfoGrid, victimSchoolInfoGrid, victimAdmissionInfoGrid As RadGrid
Public Property HostStudentsData() As DataTable
Get
Dim obj As Object = Me.Session("HostStudentsData")
If obj IsNot Nothing Then
Return DirectCast(obj, DataTable)
End If
Dim _hostStudentData As New DataTable()
Dim studentMerge As New MCOECN.DASL.BusinessLogic.SIS.StudentMerge.Merge()
_hostStudentData = studentMerge.GetStudentInfo(txtLastName.Text + "%", txtFirstName.Text + "%", CurrentContext.WorkingSchool.DistrictId)
Me.Session("HostStudentsData") = _hostStudentData
Return _hostStudentData
End Get
Set(value As DataTable)
Me.Session("HostStudentsData") = value
End Set
End Property
Public Property VictimStudentsData() As DataTable
Get
Dim obj As Object = Me.Session("VictimStudentsData")
If obj IsNot Nothing Then
Return DirectCast(obj, DataTable)
End If
Dim _victimStudentData As New DataTable()
Dim studentMerge As New MCOECN.DASL.BusinessLogic.SIS.StudentMerge.Merge()
_victimStudentData = studentMerge.GetStudentInfo(txtLastName.Text + "%", txtFirstName.Text + "%", CurrentContext.WorkingSchool.DistrictId)
Me.Session("VictimStudentsData") = _victimStudentData
Return _victimStudentData
End Get
Set(value As DataTable)
Me.Session("VictimStudentsData") = value
End Set
End Property
Protected Sub btnHostSearch_Click(sender As Object, e As EventArgs) Handles Button1.Click
HostStudentsData = Nothing
hostSearchGrid.Visible = True
Dim dt As DataTable = HostStudentsData
dt.AcceptChanges()
hostSearchGrid.DataSource = dt
hostSearchGrid.DataBind()
End Sub
Protected Sub btnVictimSearch_Click(sender As Object, e As EventArgs)
VictimStudentsData = Nothing
victimSearchGrid.Visible = True
victimSearchGrid.DataSource = VictimStudentsData
victimSearchGrid.DataBind()
End Sub
Protected Sub hostSearchGrid_NeedDataSource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
Dim HostSearchStudents As DataTable = HostStudentsData
hostSearchGrid.DataSource = HostSearchStudents
End Sub
Protected Sub victimSearchGrid_NeedDataSource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
Dim VictimSearchStudents As DataTable = VictimStudentsData
victimSearchGrid.DataSource = VictimSearchStudents
End Sub
Protected Sub hostSearchGrid_Click_ItemCommand(ByVal source As Object, ByVal e As GridCommandEventArgs)
If e.CommandName = "Compare" Then
Dim itemValues As IDictionary = New Dictionary(Of Object, Object)()
hostSearchGrid.Rebind()
Dim item As GridDataItem = DirectCast(e.Item, Global.Telerik.Web.UI.GridDataItem)
itemValues("StudentID") = item.OwnerTableView.DataKeyValues(item.ItemIndex)("StudentID").ToString()
Dim studentMerge As New MCOECN.DASL.BusinessLogic.SIS.StudentMerge.Merge()
Dim studentId As Guid = New Guid(itemValues("StudentID").ToString)
Dim studentDS As DataSet = studentMerge.GetStudentInfoById(studentId, CurrentContext.WorkingSchool.DistrictId)
BindHostInformation(studentDS)
End If
End Sub
Protected Sub victimSearchGrid_Click_ItemCommand(ByVal source As Object, ByVal e As GridCommandEventArgs)
If e.CommandName = "Compare" Then
Dim itemValues As IDictionary = New Dictionary(Of Object, Object)()
victimSearchGrid.Rebind()
Dim item As GridDataItem = DirectCast(e.Item, Global.Telerik.Web.UI.GridDataItem)
itemValues("StudentID") = item.OwnerTableView.DataKeyValues(item.ItemIndex)("StudentID").ToString()
Dim studentMerge As New MCOECN.DASL.BusinessLogic.SIS.StudentMerge.Merge()
Dim studentId As Guid = New Guid(itemValues("StudentID").ToString)
Dim studentDS As DataSet = studentMerge.GetStudentInfoById(studentId, CurrentContext.WorkingSchool.DistrictId)
BindVictimInformation(studentDS)
End If
End Sub
Private Sub BindHostInformation(ByVal hostStudentDS As DataSet)
hostStudentInfoGrid.DataSource = hostStudentDS.Tables(0)
hostSchoolInfoGrid.DataSource = hostStudentDS.Tables(1)
hostAdmissionInfoGrid.DataSource = hostStudentDS.Tables(2)
hostStudentInfoGrid.DataBind()
hostSchoolInfoGrid.DataBind()
hostAdmissionInfoGrid.DataBind()
End Sub
Private Sub BindVictimInformation(ByVal victimStudentDS As DataSet)
victimStudentInfoGrid.DataSource = victimStudentDS.Tables(0)
victimSchoolInfoGrid.DataSource = victimStudentDS.Tables(1)
victimAdmissionInfoGrid.DataSource = victimStudentDS.Tables(2)
victimStudentInfoGrid.DataBind()
victimSchoolInfoGrid.DataBind()
victimAdmissionInfoGrid.DataBind()
End Sub
Private Sub Page_Load1(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
txtFirstName.Text = "Cor"
txtLastName.Text = "A"
End If
End Sub