PDA

View Full Version : مشکل در پیجینگ



dr.pantagon
یک شنبه 04 فروردین 1387, 17:11 عصر
سلام من می دونم در ایم مرود قبلا حرف زده شده و سوال پرسیده شده ولی من به جواب نرسیدم یعنی سرچ کردم برای اون هایی که کارشون این است که می گن سرچ کن قبل پست دادن :قهقهه:
====================
مشکل من توی پیجینگ توی دیتاگرید است

AllowCustomPaging must be true and VirtualItemCount must be set for a DataGrid with ID DataGrid1 when AllowPaging is set to true and the selected datasource does not implement ICollection.
===============================
خوب از پست های قبلی فهمیدم که برای این است که از دیتاریدر استفاده کردم و باید رو خاصیت
VirtualItemCount کاری انجام بشه ولی چه کاری تازه کرم و 90 درصد کد هایی هم که اونجا بود
سی شارپ بود لطفا وی بی بگین
تشکر.


Public Sub bindgrid()
Dim conn As New SqlClient.SqlConnection
Dim comm As New SqlClient.SqlCommand
Dim Users As SqlClient.SqlDataReader
conn.ConnectionString = "workstation id=REZA;packet size=4096;user id=sa;data source=REZA;persist security info=True;initial catalog=hesabisp;password=reza"
comm.Connection = conn
comm.CommandText = "select * from register"
conn.Open()
Users = comm.ExecuteReader
DataGrid1.DataSource = Users
DataGrid1.DataKeyField = "uid"
DataGrid1.DataBind()
Users.Close()
conn.Close()
End Sub

meysam_12001
یک شنبه 04 فروردین 1387, 21:22 عصر
AllowPaging دیتاگریدتو True کن
AllowCustomPaging دیتاگریدتو False کن

این تابع رو برای خواندن از دیتابیس و نمایش اطلاعات تو دیتاگرید استفاده کن


PublicSub bindgrid()
Dim conn AsNew SqlClient.SqlConnection("server=.;database=northwind;uid=sa;pwd=123")
Dim adapter AsNew SqlDataAdapter("SELECT * FROM Customers", conn)
Dim ds AsNew DataSet
adapter.Fill(ds)
DataGrid1.DataSource = ds
DataGrid1.DataBind()
EndSub


تو قسمت PageIndexChanged دیتاگرید این کد رو بنویس تا بتونی Pageهای دیگت رو هم نمایش بدی


DataGrid1.CurrentPageIndex = e.NewPageIndex
bindgrid()

meysam_12001
یک شنبه 04 فروردین 1387, 21:32 عصر
برای اینکه این errorی هم که توی کدی که خودت نوشتی بخوای رفع بشه باید AllowPaging و AllowCustomPaging دیتاگریدتو True کن از قسمت Properties

dr.pantagon
یک شنبه 04 فروردین 1387, 22:30 عصر
برای اینکه این errorی هم که توی کدی که خودت نوشتی بخوای رفع بشه باید AllowPaging و AllowCustomPaging دیتاگریدتو True کن از قسمت Properties

تشکر
ولی اگر این کار رو بکنم بین صفحات حر کت نمی کنه

dr.pantagon
دوشنبه 05 فروردین 1387, 02:05 صبح
سلام دوست عزیز مشکل 80 درصد حل شد یعنی پیغام خطا رفت و لینک های پایین صفحه همون شماره صفحه آمد
من الان 4 صفحه اطلاعات دارم ولی فقط صفحه یک رو نشون میده و هرچی صفحه های دیگه رو می زنم نمیره ارور هم نمیده و کد مربوطه رو هم گذاشتم

DataGrid1.CurrentPageIndex = e.NewPageIndex
bindgrid()ولی جواب نمیده
و صفحه همین جور لود ش طول میکشه و Stop هم نمیشه

meysam_12001
دوشنبه 05 فروردین 1387, 12:20 عصر
من دقیقا نمی دونم که توی کدت چه کار کردی. ولی این مواردی رو که گفتم برات تو یه Page درست کردم

dr.pantagon
سه شنبه 06 فروردین 1387, 00:32 صبح
سلام مشکل حل شد کد شما رو هم دیدم نمی دونم به این روش چی می گن ولی من با هندل کردن Item مربوطه مشکل رو حل کردم
Handles DataGrid1.PageIndexChanged


Private Sub DataGrid1_PageIndexChanged(ByVal source As System.Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEvent Args) Handles DataGrid1.PageIndexChanged