PDA

View Full Version : سوال: ایجاد شماره صفحه



arash69
جمعه 19 اردیبهشت 1393, 23:08 عصر
سلام به همگی؛
در رابطه با ایجاد شماره صفحه سوال داشتم؛
با چه روشی و چه کنترلی میشه شماره صفحاتی همانند چیزی که در نتایج جست و جوی گوگل هست؛ ایجاد کرد؟
ممنون میشم راهنمایی کنید.

Mag-Mag
شنبه 20 اردیبهشت 1393, 14:57 عصر
اسم اونا شماره صفحه نیست و paging هست
دلیلش هم اینه که بجای اینکه اون همه رکورد رو لود کنن که زیاد میشه و صفحه کند میشه
مثلا 20 تا 20 لود کنن

arash69
شنبه 20 اردیبهشت 1393, 19:47 عصر
اسم اونا شماره صفحه نیست و paging هست
دلیلش هم اینه که بجای اینکه اون همه رکورد رو لود کنن که زیاد میشه و صفحه کند میشه
مثلا 20 تا 20 لود کنن

ممنون؛ اما میدونستم که paging گفته میشه و منظورم از این سوال صفحه بندی بود.
اما چطوری میشه قابلیت paging رو ایجاد کرد؟
البته میدونم کنترل DataGridView این قابلیت رو داره، اما نمیخوام از این کنترل استفاده کنم.

Mag-Mag
یک شنبه 21 اردیبهشت 1393, 11:39 صبح
اگه می خوای خودت درش بیاری روشش اینه که اول یه select برنی از جدولت ببینی چندتا رکورد داری.
بعد مثلا تصمیم داری 20 تا 20 نشون بدی
خوب تقسیم بر 20 مکنی تعدا کل رکورد ها رو تا تعداد page ها رو بدست بیاری
حالا مثلا 20 تا رکورد اول رو لود میکنی و زیرش از شماره 1 تا جواب تقسیمت مینویسی

حالا این اعداد به صورت لینکی هستند که مثلا وقتی روی 2 میزنی دوباره همین صفحه رو فراخونی میکنه (یعنی لینک به همین صفحه) فقط مثلا عدد شروع رکورد ها رو باید به این صفحه یفرستی
مثلا وقتی روی page شماره 2 کلیک میشه باید از رکورد 20 به بعد نشون بدی.چون از 1 تا 19 رو توی page َشماره 1 نشون دادی.

حالا اون تابعی که داره اطلاعات رو لود می کنه و نشون میده روی صفحه (که در لود اول 20 تا رو نشون داده) در جایی که داری از دیتابیس Select می کنی و DataSet رو پر می کنی ، دستور Fill
از این حالتش باید استفاده کنی


SqlDataAdapter sqlDa = new SqlDataAdapter(SqlCommand, ConnectionString);
DataSet ds = new DataSet();
sqlDa.Fill(ds, FromRec, RecCount, "Tbl");


که FromRec میشه اینکه از چه رکوردی شروع بشه.مثلا برای بار اول که صفحت لود میشه FromRec میشه صفر.وقتی روی page شماره 2 کلیک میشه FromRec میشه 20
RecCount هم میشه تعداد رکوردی که میخوای توی هر صفحه نشون بدی.که اینجا می گفتیم 20