PDA

View Full Version : چرا نمی تونم به دیتاگرید ویو وصل شم؟؟؟؟؟؟؟؟؟؟؟؟



yekta64
پنج شنبه 09 مهر 1388, 23:34 عصر
سلام دوستان
من دارم از sql server توی برنامه ام استفاده می کنم برای خوندن اطلاعات ونمایش آنها توی دیتاگرید ویو از کد زیر استفاده می کنم منتها اطلاعات نمایش داده نمیشه
ممنون میشم ایراد این کد رو بگید


Dim con As New SqlConnection
Dim dr As New SqlDataAdapter
Dim ds As New DataSet
Dim strsql As String
con.ConnectionString = "Data Source=(local);Initial Catalog=student;Integrated Security=True"
con.Open()
strsql = "select * from Manager"
dr = New SqlDataAdapter(strsql, con)
dr.Fill(ds)
DataGridView1.DataSource = ds
DataGridView1.DataMember = "Manager"
con.Close()

viper2009
جمعه 10 مهر 1388, 01:00 صبح
DataGridView1.DataSource = ds.table(0)

ali_md110
جمعه 10 مهر 1388, 02:13 صبح
دوست من قسمت متد fill دیتااداپتورتون رو کامل نکردید قبل از اون اگر دیتاست رو نوسازی نکردید انجامش بدید
ds=new dataset

dr.Fill(ds,"Manager")

yekta64
جمعه 10 مهر 1388, 08:23 صبح
DataGridView1.DataSource = ds.table(0)


مرسی از لطف شما اما منظورتون از اندیس صفر توی tabel(0) چی هستش؟

soniarose
جمعه 10 مهر 1388, 11:31 صبح
سلام من هم از این کد استفاده میکنم ولی درقسمت datagridview1.datamember="table1 خطای
Child list for field table1 cannot be created. رو میده نمیدونم منظورش چیه لطفا کمک کنید

viper2009
جمعه 10 مهر 1388, 11:38 صبح
مرسی از لطف شما اما منظورتون از اندیس صفر توی tabel(0) چی هستش؟

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

soniarose
جمعه 10 مهر 1388, 12:48 عصر
کسی نیست جواب بده

viper2009
جمعه 10 مهر 1388, 16:21 عصر
کسی نیست جواب بده

برنامه ات رو با دیتا بیست ضمیمه کن سعی می کنم مشکل را رفع کنم

anooshiran
جمعه 10 مهر 1388, 17:21 عصر
سلام من هم از این کد استفاده میکنم ولی درقسمت datagridview1.datamember="table1 خطای
Child list for field table1 cannot be created. رو میده نمیدونم منظورش چیه لطفا کمک کنید


سلام دوست عزيز

شما وقتي نياز است از datagridview1.datamember استفاده كنيد كه
DataGridView1.DataSource را معادل يك dataseet قرارداده باشيد. اگر شما Datasource را معادل يك table از dataset قرار داده باشيد ديگر به datagridview1.Datamemeber نيازي نداريد.

اين erro نشان مي دهد كه يا شما به datasoruce يك table اضافه كرده ايد . يا اگر يك dataset اضافه نموده ايد جدولي به نام Table1 در ليست آن database نيست.
اگر شما لطف كنيد كد DataGridView1.DataSource را اينجا بگذاريد بهتر مي توان نتيجه گرفت

soniarose
جمعه 10 مهر 1388, 20:42 عصر
از همگی ممنونم حالا اگه بخوام با کلیک کردن روی هر ستون gridview اطلاعات اون در textboxها قرار بگیره باید چیکار کنم

anooshiran
جمعه 10 مهر 1388, 21:06 عصر
سلام دوست عزيز

با click روي ستون يا سطر چون خيلي فرق مي كنه. البته معمولا با click روي سطر بايد دنبال اين كار باشي

در لينك زير Post 2 ي; برنامه گذاشتم كه مشكلت رو حل مي كنه

http://barnamenevis.org/forum/showthread.php?t=182436

soniarose
شنبه 11 مهر 1388, 12:24 عصر
سلام از راهنماییتون ممنونم من اطلاعات جدولم رو select میکنم طبق کدی که در همین تاپیک هست ولی برای نشون دادن اطلاعات در textbox ها ازکد شما استفاده میکنم ولی error میده

anooshiran
شنبه 11 مهر 1388, 12:36 عصر
سلام دوست عزيز

لطفا كدهات را از select تا جايي كه از كدهاي من استفاده مي كني را اينجا بذلر.

soniarose
شنبه 11 مهر 1388, 13:41 عصر
Dim con As New SqlClient.SqlConnection
Dim dr As New SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim strsql As String
con.ConnectionString = "Data Source=(local);Initial Catalog=TEL;Integrated Security=True"
con.Open()
strsql = "select * from table1"
dr = New SqlClient.SqlDataAdapter(strsql, con)
dr.Fill(ds, "table1")
dgv.DataSource = ds.Tables(0)
con.Close()


dSet.Tables.Add(tb)

bs.DataSource = dSet
bs.DataMember = dSet.Tables(0).TableName

Me.dgv.DataSource = bs
Me.txt1.DataBindings.Add("Text", bs, "Col1")
Me.txt2.DataBindings.Add("Text", bs, "Col2")
Me.txt3.DataBindings.Add("Text", bs, "Col3")

saadi2
شنبه 11 مهر 1388, 14:47 عصر
کد شما مشکل داره به این شکل استفاده کن:



Dim con As New SqlClient.SqlConnection
Dim dr As New SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim strsql As String
Dim Dt1 As New DataTable
con.ConnectionString = "Data Source=(local);Initial Catalog=TEL;Integrated Security=True"
con.Open()
strsql = "select * from table1"
dr = New SqlClient.SqlDataAdapter(strsql, con)
dr.Fill(Dt1)
con.Close()
dgv.DataSource = Dt1
Me.txt1.DataBindings.Add("Text", Dt1, "Col1")
Me.txt2.DataBindings.Add("Text", Dt1, "Col2")
Me.txt3.DataBindings.Add("Text", Dt1, "Col3")

soniarose
شنبه 11 مهر 1388, 16:26 عصر
از راهنماییتون ممنونم ولی این کد هم جواب نداد
error که میده اینه
Cannot bind to the property or column col1 on the DataSource.
Parameter name: dataMember

saadi2
شنبه 11 مهر 1388, 16:50 عصر
از راهنماییتون ممنونم ولی این کد هم جواب نداد
error که میده اینه
Cannot bind to the property or column col1 on the DataSource.
Parameter name: dataMember


به جای col1 , col2 ,col3 اسم فیلد های موحود در جدول بانک اطلاعاتیت رو بزار

soniarose
شنبه 11 مهر 1388, 18:25 عصر
بله من هم همین کار رو در همون ابتدا کردم ولی باز هم جواب نمیده دلیلی که error با col1 نوشتم این بود که در تاپیک با این نام هست

anooshiran
شنبه 11 مهر 1388, 19:28 عصر
سلام دوست عزيز


من اين كد ها را با ديتابيس northwind و يكي از جداولش به نام Customers تست كردم.

حال شما
DataBaseName را معادل نام database خود قرار بده
TableName را معادل نام جدول خود قرار بده

CustomerID و CompanyName و ContactName را معادل نام فيلد هاي خودت قرار بده




Dim con As New SqlClient.SqlConnection
Dim dr As New SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim bs As New BindingSource()
Dim strsql As String

Dim DataBaseName As String = "NorthWind"
Dim TableName As String = "Customers"
con.ConnectionString = "Data Source=(local);Initial Catalog=" & DataBaseName & ";Integrated Security=True"
con.Open()
strsql = "select * from " & TableName
dr = New SqlClient.SqlDataAdapter(strsql, con)
dr.Fill(ds, TableName)
con.Close()

bs.DataSource = ds
bs.DataMember = ds.Tables(0).TableName
Me.dgv.DataSource = bs
Me.txt1.DataBindings.Add("Text", bs, "CustomerID")
Me.txt2.DataBindings.Add("Text", bs, "CompanyName")
Me.txt3.DataBindings.Add("Text", bs, "ContactName")

soniarose
شنبه 11 مهر 1388, 21:52 عصر
خیلی از راهنمایتون ممنونم بالاخره جواب داد