PDA

View Full Version : عدم نمایش اطلاعات در DataGrid



kasmaii61
شنبه 13 تیر 1388, 21:10 عصر
سلام دوستان عزیز:
من دچار یه مشکلی شدم در نمایش اطلاعات با DataGrid
من از ADODB برای اتصال به بانک Access استفاده می کنم و هیچ مشکلی ندارم فقط زمانی که می خوام اطلاعات RecordSet رو با DataGrid نمایش بدم دچار مشکل میشم و هیچ رکوردی در DataGrid من نمایش داده نمیشه
این هم کدیه که استفاده می کنم :

With RstShow
.ActiveConnection = Cnn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
End With
RstShow.Open "SELECT * FROM users"
Set DataGrid1.DataSource = RstShow
در این حالت وقتی Debug می کنم RecordCount رکوردستم رو عدد سه نشون میده که عدد درستیه و نشون میده که اطلاعات داخل رکوردست وجود داره ولی تو DataGrid هیچ رکوردی نمایش داده نمیشه
تعریف Connection یعنی Cnn هم به درستی انجام شده که دیگه اینجا نیووردم
برای DataGrid هم فیلدها رو به درستی تعریف کردم
من قبلا با همین کد بارها برنامه نوشتم و جواب گرفتم نمی دونم این بار چرا مشکل دارم شاید چیزی رو فراموش کردم، ممنون میشم راهنماییم کنید عجیب گیرم

kasmaii61
یک شنبه 14 تیر 1388, 15:03 عصر
دوستان کسی نیست به من کمک کنه؟
اصلا dataGrid رکوردستی که از طریق ADODB به یه connection از بانک Access متصل باشه رو نشون میده؟
من با SQL هیچ مشکلی نداشتم

Mahdi_110
یک شنبه 19 مهر 1388, 17:15 عصر
سلام دوست عزیز
شما ابتدا می بایست query خود را در sql بنویسید و در connectionstring به پایگاه داده خود وصل شوید
و در قسمت Command Type نوع CmdText برای (پرسش با دستور sql) انتخاب نمایید .
در قسمت RecordSource دستور Query خود را انتخاب کنید (متغیر Sql) .
برای ست کردن DataGrid باید DataSource آن را با شیء Adodc برابر کنید .
ایمیل : sw_group14@yahoo.com


sql = "SELECT * From checkin"
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" + App.Path + "\NameDataBase.MDB"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = sql
Set DataGrid1.DataSource = Adodc1

nazaninebaba
چهارشنبه 18 فروردین 1389, 09:56 صبح
سلام
این کدی که نوشته شده datagrido سریع نشون میده و بعد می بنده می خوامdatagrid تو صفحه بمونه .من نمیفهمم مشکل از کجاست .
ممنون می شم کمک کنید کارم خیلی فوریه

amir.mehrvarz
چهارشنبه 18 فروردین 1389, 11:49 صبح
با سلام و احترام
شما قبل از آنكه اطلاعات را سلكت كنيد بايستي در رويداد فرم لود فيلدهاي جدول خود را به ستونهاي ديتاگريد نسبت دهيد. به عنوان مثال :


datagrid1.Columns(0).DataField = "Field01"
datagrid1.Columns(1).DataField = "Field02


همچنين بايستي توسط كد زير ديتاگريد را به ADODC موجود متصل كنيد (دررويداد فرم اكتيويت)


Set datagrid1.DataSource = adodc1