[英]Endless Scroll (Infinite Scroll) in ASP.Net ASPXGridView using jQuery AJAX
我想知道有什么方法可以在ASPXGridview上實現無盡的滾動。 我已經看到了類似這樣的內容( http://demos.devexpress.com/aspxgridviewdemos/PagingAndScrolling/EndlessPaging.aspx ),但這是行不通的,因為我有一個舊版本的DevExpress。
我的網格包含很多數據,所以我不希望一次全部加載它。
那么可以使用JQuery完成嗎?
這是用於填充“結果”網格的代碼:
public List<main_screenHelper> GetDedicatedRouteList(string SwitchCd, int AccId, int BndId, int CarrId, int SttId, int StatusId, int Req_id)
{
SqlConnection con = ConnectionFactory.GetDedicatedRoutesConnection();
SqlCommand cmd = new SqlCommand("GetDedicatedRoutesList", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@SwitchCd", SwitchCd);
cmd.Parameters.AddWithValue("@AccId", AccId);
cmd.Parameters.AddWithValue("@BndId", BndId);
cmd.Parameters.AddWithValue("@CarrId", CarrId);
cmd.Parameters.AddWithValue("@SttId", SttId);
cmd.Parameters.AddWithValue("@StatusId", StatusId);
cmd.Parameters.AddWithValue("@Req_id", Req_id);
List<main_screenHelper> dedicatedRoutList = new List<main_screenHelper>();
try
{
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
main_screenHelper drList = new main_screenHelper();
drList.dr_id = Int32.Parse(dr["dr_id"].ToString());
drList.switch_code = (dr["switch_code"].ToString());
drList.cus_company_name = (dr["cus_company_name"].ToString());
drList.carrier = (dr["Carrier"].ToString());
drList.dr_percentage = Int32.Parse(dr["dr_percentage"].ToString());
drList.dr_overflow = (dr["dr_overflow"].ToString());
drList.bnd_name = (dr["bnd_name"].ToString());
drList.RoutingCase = (dr["RoutingCase"].ToString());
drList.peak = Convert.ToBoolean(dr["peak"]);
drList.off_peak = Convert.ToBoolean(dr["off_peak"]);
drList.weekend = Convert.ToBoolean(dr["weekend"]);
drList.active_date = Convert.ToDateTime(dr["active_date"]);
drList.stt_name = (dr["stt_name"].ToString());
drList.stt_display_order = Int32.Parse(dr["stt_display_order"].ToString());
drList.opportunity = Convert.ToBoolean(dr["opportunity"]);
drList.Lock = Convert.ToBoolean(dr["lock"]);
drList.comments = (dr["comments"].ToString());
drList.lcr_name = (dr["lcr_name"].ToString());
dedicatedRoutList.Add(drList);
}
}
finally
{
con.Close();
con = null;
cmd = null;
}
return dedicatedRoutList;
}
}
這是我的網格的ASP代碼:
<dxwgv:ASPxGridView ID="dgrdResults" runat="server" AutoGenerateColumns="False"
DataSourceID="DedicatedRouteDataSource" Width="100%"
onhtmlrowcreated="dgrdResults_HtmlRowCreated">
<Columns>
<dxwgv:GridViewDataTextColumn Caption="Switch" FieldName="switch_code"
VisibleIndex="0" Width="30px">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="LCR" FieldName="lcr_name"
VisibleIndex="1">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Customer" FieldName="cus_company_name"
VisibleIndex="2" Width="150px">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Vendor" FieldName="carrier"
VisibleIndex="3">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Ratio"
VisibleIndex="4">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Overflow"
VisibleIndex="5">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Destination" FieldName="bnd_name"
VisibleIndex="6">
<DataItemTemplate>
<dxe:ASPxHyperLink ID="DestinationLink" runat="server" Text='<%#Eval("bnd_name") %>' ClientInstanceName="DestinationLink" Font-Size="11px">
</dxe:ASPxHyperLink>
</DataItemTemplate>
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Peak" FieldName="peak"
VisibleIndex="7">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="O/Peak" FieldName="off_peak"
VisibleIndex="8">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="W/End" FieldName="weekend"
VisibleIndex="9">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Created" FieldName="active_date"
VisibleIndex="10">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Status" FieldName="stt_display_order"
VisibleIndex="11">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Special" VisibleIndex="12">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Comments" FieldName="comments"
VisibleIndex="13">
</dxwgv:GridViewDataTextColumn>
<dxwgv:GridViewDataTextColumn Caption="Edit" VisibleIndex="14">
</dxwgv:GridViewDataTextColumn>
</Columns>
</dxwgv:ASPxGridView>
我沒有完整的答案,但是希望可以向正確的方向發送信息。
我認為您可以通過將DevExpress GridView與jQuery結合使用來模仿無休止滾動的行為,但這會需要一些努力。 您可以使用GridView定義一個可滾動的div,然后讓jQuery檢測您是否滾動到底部附近。 請參閱: 檢查用戶是否已滾動到底部
如果觸發了jQuery事件,則可以在ASPxGridView上執行自定義回調,請選擇幾個額外的行並將它們綁定到網格。
升級DevExpress許可證或使用默認分頁可能容易得多:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.