منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود التنقل بين السجلات لا يعمل جيدا لماذا ؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم 
انا استعمل هذا الكود للانتقال بين السجلات لكن ينتقل إلى السجل التالي مرة وحدة فقط و يتوقف ولا ينتقل إلى بعده
ما الحل ؟ 
PHP كود :
Private Sub Button17_Click(sender As ObjectAs EventArgsHandles Button17.Click
        Me
.BindingContext(DataSet1"Ginfo").Position = +1

    End Sub 
وعليكم السلام ورحمة الله وبركاته


أين تقوم بتعبئة الداتاسيت, في هذا الكود تقوم بانشاء كائن جديد من DS, في هذه الحالة يكون فارغ


الرجاء التوضيح






تمنياتي لك وللجميع التوفيق
PHP كود :
Public Class Main_Form
    Dim ConStr 
As String "Provider=Microsoft.Jet.OLEDB.4.0;" &
"Data Source =" Application.StartupPath "\Data\Clinic.mdb"
 
   Dim Conn As New OleDbConnection(ConStr)
 
   Dim Conn2 As New OleDbConnection(ConStr)
 
   Dim Conn3 As New OleDbConnection(ConStr)
 
   Dim Conn4 As New OleDbConnection(ConStr)
 
   Dim Conn5 As New OleDbConnection(ConStr)
 
   Dim Conn6 As New OleDbConnection(ConStr)
 
   Dim DataSet1 As New DataSet
    Dim DataSet2 
As New DataSet
    Dim DataSet3 
As New DataSet
    Dim DataSet4 
As New DataSet
    Dim DataSet5 
As New DataSet
    Dim DataSet6 
As New DataSet
    Dim DataAdapter 
As New OleDbDataAdapter
    Dim m 
As String
    Dim ref 
As New Button
    Dim DataBindings 
As BindingSource
    Dim SQLstr 
As String "SELECT * FROM Ginfo " 
PHP كود :
Private Sub Main_Form_Load(sender As ObjectAs EventArgsHandles MyBase.Load
        
'TODO: This line of code loads data into the 'ClinicDataSet.Medicine_Tbl' table. You can move, or remove it, as needed.
        ' 
Me.MedicineTableAdapter.Fill(Me.ClinicDataSet.Medicine_Tbl)
 
       Conn.Open()
 
       Dim DataAdapter1 As New OleDbDataAdapter(SQLstrConn)
 
       DataAdapter1.Fill(DataSet1"Ginfo")
 
       Me.BindingContext(DataSet1"Ginfo").Position Me.BindingContext(DataSet1"Ginfo").Count 1
        Conn
.Close()
 
       Pt_ID.DataBindings.Add("Text"DataSet1"Ginfo.ID")
 
       Pt_Name.DataBindings.Add("Text"DataSet1"Ginfo.Name")
 
       Pt_Mobile.DataBindings.Add("Text"DataSet1"Ginfo.Mobile")
 
       Pt_DOB.DataBindings.Add("Text"DataSet1"Ginfo.DOB")
 
       Pt_Age.DataBindings.Add("Text"DataSet1"Ginfo.age")
 
       Pt_Sex.DataBindings.Add("Text"DataSet1"Ginfo.SEX")
 
       Pt_Ocup.DataBindings.Add("Text"DataSet1"Ginfo.Occupation")
 
       Pt_Adress.DataBindings.Add("text"DataSet1"Ginfo.ADRESS")
 
       Pt_Credit.DataBindings.Add("text"DataSet1"Ginfo.Credit")
 
       Pt_SDis.DataBindings.Add("text"DataSet1"Ginfo.S_Dis")
 
       Search.Focus()
 
       RadioButton3.Checked True
        If Pt_Credit
.Text 0 Then
            Pt_Credit
.BackColor Color.Red
        End 
If
 
       Me.BindingContext(DataSet1"Ginfo").Position 0
    End Sub 

الحمد لله وجدت الحل

PHP كود :
Me.BindingContext(DataSet1"Apoint").Position Me.BindingContext(DataSet1"Apoint").Position 
للعلم فقط الكود في المشاركة الأولى الذي كنت تقصده


PHP كود :
Me.BindingContext(DataSet1"Ginfo").Position + = 

بدلا من
PHP كود :
Me.BindingContext(DataSet1"Ginfo").Position = +


وللإستفادة

أرى أنك تستخدم أكثر من متغير لنفس جملة الإتصال يمكنك التعامل مع مغير واحد فقط لا داعي لكثرة المتغيرات, 
أيضا يمكنك الوصول إليه من خارج الفورم الذي تمّ تعريفه فيها وذلك بتعريفه من النوع Public عام وليس Dim خاص.

أيضاً Dataset واحدة يمكن أن تحتوي على جميع جداول قاعدة البيانات ويمكنك مراجع الموضوع التالي الفرق بين Dataset و Datatable
http://vb4arb.com/vb/showthread.php?tid=26385 





تمنياتي لك وللجميع التوفيق
شكرا لك أخي Baha على الإفادة
الشكر لله

أتمنى لك مزيداً من التقدم والإبداع باذن الله