PDA

View Full Version : کمک درباه دیتا گرید



mehdi_522
چهارشنبه 21 فروردین 1387, 09:55 صبح
اقا با سلام
لطفا من را راهنمایی کنید
من یک برنامه دارم مینویسم که اطلاعات فیش بانکی در دیتا بیس ثبت کند که برای نمایش اطلاعات دیتا بیس
از دیتاگرید ویو استفاده میکنم که در قسمت فورم لود کئد اتصال دیتاگرید ویو به دیتا بیس را نوشتم
اما در قسمت دکمه ورود اطلاعات که اطلاعات دریافتی از فورم را وارد دیتا بیس میکنک همه چی خوب است اما
در قسمت دیتا گرید اطلاعات رکورد اضافه شده را نمایش نمی دهد از متد رفرش همه استفاده کردم اما جواب نمی دهد
لطفا من را راهنمایی کنید چطور می توانم اینکار را انجام دهم
Private Sub fishform_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Computername As String = System.Environment.MachineName.ToString
Dim Constr As String = "Data Source=" + Computername + ";Initial Catalog=maskan2008;Integrated Security=True"
Dim Conn1 As New SqlConnection(Constr)
Dim Comm1 As New SqlCommand()
Dim adsql As New SqlDataAdapter
Dim mydata As New DataSet
Dim strReportPath As String = GetCurrentDirectory()
If strReportPath.Substring(strReportPath.Length - 9) = "bin\Debug" Then
strReportPath = strReportPath.Substring(0, strReportPath.Length - 10)
End If
Comm1.CommandType = CommandType.Text
Me.Cursor = Cursors.Hand
Me.Font = New Font("Tahoma", 9)
Me.Text = "ثبت فیش های بانکی"
Me.MinimizeBox = False
Me.MaximizeBox = False
Me.RightToLeft = Windows.Forms.RightToLeft.Yes
Dim Sqlstr2 As String = "select * from fishtbl"
Comm1.CommandText = Sqlstr2
Conn1.Open()
Comm1.Connection = Conn1
adsql.SelectCommand = Comm1
adsql.Fill(mydata, "fishtbl")
'Set Dataviwe
Me.DataGridView1.DataSource = mydata
Me.DataGridView1.Font = New Font("Tahoma", 8)
Me.DataGridView1.DataMember = "fishtbl"
Me.DataGridView1.BorderStyle = BorderStyle.None
Me.DataGridView1.ForeColor = Color.Blue
Me.DataGridView1.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Sunken
Me.DataGridView1.Columns.Item(0).HeaderText = "شماره فیش"
Me.DataGridView1.Columns(1).HeaderText = "تاریخ واریز فیش"
Me.DataGridView1.Columns(2).HeaderText = "مبلغ"
Me.DataGridView1.Columns(3).HeaderText = "کد عضویت"
Me.DataGridView1.Columns(4).HeaderText = "نام بانک"
Me.DataGridView1.Columns(5).HeaderText = "شناسه"
Me.DataGridView1.Refresh()
Conn1.Close()
'
'Set button
Me.button1.ImageAlign = ContentAlignment.MiddleRight
Me.button1.Image = Image.FromFile(strReportPath + "\icon\tick.png")
Me.Button2.Image = Image.FromFile(strReportPath + "\icon\cross.png")
Me.Button3.Image = Image.FromFile(strReportPath + "\icon\add.png")
Me.Button2.ImageAlign = ContentAlignment.MiddleRight
Me.Button3.ImageAlign = ContentAlignment.MiddleRight
Me.Button4.ImageAlign = ContentAlignment.MiddleRight
Me.Button4.Image = Image.FromFile(strReportPath + "\icon\serch.png")
Me.Button5.ImageAlign = ContentAlignment.MiddleRight
Me.Button5.Image = Image.FromFile(strReportPath + "\icon\edit.png")
'Set and serach data to
'
Dim Sqlstr As String = "select * from banktbl"
Comm1.CommandText = Sqlstr
Conn1.Open()
Comm1.Connection = Conn1
Dim Resql As SqlDataReader
Resql = Comm1.ExecuteReader
If Not Resql.Read Then
MsgBox("هیچ بانکی هنوز در سیستم تعریف نشده است لطفا ابتدا بانک مورد نظر را ایجاد نماید", MsgBoxStyle.Critical, "خطا در جستجو اطلاعات")
Conn1.Close()
End If
Do While Resql.Read
Me.namebanktxt.Items.Add(Resql.Item("name_bank"))
Loop
Me.lasttxt.ReadOnly = True
Me.namebanktxt.Text = Me.namebanktxt.Items(0)
Me.codetxt.Focus()
End Sub
----قسمت کد ورود اطلاعات به بانک------------------------------------
Dim StrSql As String = "insert into fishtbl (f_numfish,f_datefish,f_mab,f_mem,f_namebank) values('" + Me.numfishtxt.Text + "','" + Me.datefish.Text + "','" + Me.monytxt.Text + "','" + Me.codetxt.Text + "','" + Me.namebanktxt.Text + "')"
Dim Computername As String = System.Environment.MachineName.ToString
Dim Constr As String = "Data Source=" + Computername + ";Initial Catalog=maskan2008;Integrated Security=True"
Dim Conn1 As New SqlConnection(Constr)
Dim Comm1 As New SqlCommand()
Dim mydata As New DataSet
Dim adsql As New SqlDataAdapter
Comm1.CommandType = CommandType.Text
Comm1.CommandText = StrSql
Comm1.Connection = Conn1
adsql.SelectCommand = Comm1
Conn1.Open()
Comm1.ExecuteNonQuery()
MsgBox("اطلاعات وارد شده در سیستم ثبت گردید", MsgBoxStyle.Information, "موفقیت در ثبت اطلاعات")
Conn1.Close()

reza6384
چهارشنبه 21 فروردین 1387, 10:51 صبح
سلام مهدی جان. از طرف خودم و دوستان ورودتو به سایت خوش آمد می گم.
لطفا از این به بعد کدهایی رو که اینجا می نویسی بین تگ کد که توی Toolbar بالا با # مشخص شده قرار بده.
برای مشکلت، این متد رو فراخوانی کن ،حل می شه :



Sub BindDatagridview(ByRef DGV As DataGridView, ByVal Query AsString)
Try
Dim DS AsNew DataSet
Dim Result AsNew DataTable("Result")
DS.Tables.Add(Result)
Dim Conn AsNew SqlConnection("Data Source=.;Initial Catalog=Northwind;Integrated Security=True")
Conn.Open()
Dim SDA AsNew SqlDataAdapter(Query, Conn)
SDA.Fill(DS, "Result")
Conn.Close()
DGV.DataSource = DS
DGV.DataMember = "Result"
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation)
EndTry
EndSub