PDA

View Full Version : حرفه ای: صفحه بندی گریدویو به این شکل خاص



bftarane
پنج شنبه 22 خرداد 1393, 09:13 صبح
سلام.
لطفاً این صفحه رو ببینید.
http://www.iranjob.ir/pages/jobseekersSearch.aspx
برای صفحه بندی گریدویو به این صورت به این صورت آیا Tutorial ای سراغ دارید؟

kavayo
پنج شنبه 22 خرداد 1393, 15:03 عصر
در کنترل های تلریک و هم کنترل های Ajaxخود asp یه کنترلی به نام slider هستش که میشه این کار رو انجام داد به لینک های زیر مراجعه کن
http://www.dotnetcurry.com/showarticle.aspx?ID=219
http://www.codeproject.com/Articles/32559/Paging-in-Grid-View-using-Slider-Extender

aroshanzamir
پنج شنبه 22 خرداد 1393, 18:36 عصر
اگر هم بخواهی می تونی با کد نویسی این کار را انجام بدی :

اول استفاده از Range

<div>
<input id="slider1" type="range" min="1" max="10" step="1" style="width:250px;" />
<br />
<span id="sp"></span>
</div>

در رویداد Change این کنترل : با JQuery

jQuery(document).ready(function () {
jQuery('#slider1').change(function () {
sp.innerText = $(this).val();
});
});

تا اینجا هر بار که این تغیر کنه مقدار ش چاپ میشه ////
حالا فراخوانی اطلاعات با Ajax

jQuery(document).ready(function () {
jQuery('#slider1').change(function () {
$.ajax({
type: "POST",
url: "Default.aspx/RetriveInformation",
data: "{'PageNumber':'" + $(this).val() + "'}" ,
contentType: "application/json;charset=utf-8",
dataType: "json",
async: false,
cache: false,
success: function (data) {
},
error: function (jqXHR, textStatus, errorThrown) { alert(errorThrown); }
});
});
});





حالا در کد سمت سرور :



[WebMethod(EnableSession=true)]
public static void RetriveInformation(string PageNumber)
{
int Id;
if(int.TryParse(PageNumber,out Id))
{
//میری از دیتا بیس از رکورد
//PageNumber
//تا 10 تای بعدی را می خونی بعدش هم بایند می کنی به GridView
}
}



در ضمن می تونی کنترل Range را به صورت دینامیکی با توجه به تعداد رکورد های دیتابیست به صفحه اضافه کنی /////

یک لیترال بزار روی صفحه بعد یک کنترل بهش اضافه کن//


<asp:Literal ID="literalControl" runat="server"></asp:Literal>

این هم کد سی شارپ : برای اضافه کردن کنترل با یک رنج خاص

//مثلا تعداد رکورد های دیتابیس 50
int CountRecord = 50;
// در هر بار تغیر می خواهی 10 تا رکورد را نمایش بدی
literalControl.Text = "<input id=\"slider1\" type=\"range\" min=\"1\" max='" + CountRecord / 10 + "' step=\"1\" style=\"width:250px;\" />";


آخرین حرف :
چون داری کنترل را دینامیکی به صفحه اضافه می کنی // دستورات JQuery بالا را با رویداد Live باید کنترل کنی