الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طريقة ربط ComboBox بِ DataGrid

مغلق
بدأه مشروع مبرمجة في 5 يناير 2005 · 15 رد · 3,409 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

حقاً يخجلني كثرة الطلب منكم إخوتي بالرغم من أنني عضوة جديدة

و لكن كان إنتسابي في وقت أول مشروع كبير لي و لكن إن شاء الله

قريباً سأحاول تقديم كل ما لدي ..

الآن أحتاج كثيراً طريقة و كود ربط ComboBox بأداة DataGrid مع العلم

أن البرنامج الذي أستخدمه هو visual studio 2002 ..

الحاجة لذاك الربط هو أنني سأربط DataGrid بقاعدة بيانات لجدول

سيكون ذلك الجدول يحتوي على الدرجات الدراسية لجميع المواد

و ستكون ComboBox أعلى الأداة DataGrid و كلما فتحت القائمة

و أخترت أحد الأسماء للطالبات تظهر الدرجات ..

قمت بربط الداتا غريد بالجدول و لكنني لم أعرف كيفية ربط الكمبوبوكس

بالداتا غريد و بالجدول !!

أريد ذلك و بأبسط طريقة ممكنة إن أمكن ..

أعرف طرق أخرى غير الداتا جريد و الكمبوبوكس و لكن مشروعي تقييمي

و أحتاج لطرق جديدة في البرمجة و هذه الطريقة أتمنى كثيراً أن أتعلمها

كما أنني أتمنى الحصول على أزرار التالي و السابق و زر حفظ و إضافة

و بحث ..

أعرف بأنني أثقلات الطلب هذه المرة و لكن ذاك نقطة من بحر من مشروعي

و احتاج كثيراً المساعدة فيه .. سأكون ممتنى كثيراً و شاكرة لكل من يتقدم

بالمساعدة و لو بالقليل !

عذراً على الإطالة و بالتوفيق جميعاً

سلام

#2

مرحبا

الملف المرفق يحتوي على الاكواد التي طلبتها لكن يلزمك فقط انشاء

Data Connection

Data Adapter

Data Set

اتمنى ان اكون ساعدت

Data Binding.zip

#3

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

مرحبابيك أخوي أبو ليلى

ما قصرت و جزاك الله كل خير و ثواب و مشكور فعلا على الرد السريع

بس للاسف البرنامج ما رضي يفتح لي مكتوب لي انه انشئ في

اصدارة أحدث !!

و كمان طريقة ربط الكمبوبوكس احتاج شرح لربطها بالكتابة يكون أحسن

لو ما عليك تعبه أخوي

و ناقض كود زر إضافة و بحث

معليش على كثرة الطلبات و اتمنى من الجميع مساعدتي كل من يملك

الإجابة رجاءا لا يتاخر

سلام

#4

هذا هو الكود بالنسبة للكومبو

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim myds As New DataSet
        Dim str_con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=موقع قاعدة البيانات"

        Dim strSQL As String = "SELECT * FROM [اسم الجدول الموجود فيه أسماء الطالبات]"
        Dim myConn As New OleDb.OleDbConnection(str_con) 'connection
        Dim myda As New OleDb.OleDbDataAdapter(strSQL, myConn) 'DataAdapter
        myda.Fill(myds, "اسم الجدول الموجود فيه أسماء الطالبات")
        Me.ComboBox1.DisplayMember = "إسم العمود الذي يحتوي على الأسامي"
        Me.ComboBox1.ValueMember = "كل إسم أكيد له رقم خاص ضعيه هنا"
        Me.ComboBox1.DataSource = myds.Tables(0)
        Me.ComboBox1.Text = ""

    End Sub

وهذا الكود بانسبة للداتا قريد

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        Dim myds As New DataSet
        Dim str_con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=موقع قاعدة البيانات"

        Dim strSQL As String = "SELECT * FROM[اسم الجدول الموجود فيه درجات الطالبات] where رقم الطالبة=" & Me.ComboBox1.SelectedValue
        Dim myConn As New OleDb.OleDbConnection(str_con) 'connection
        Dim myda As New OleDb.OleDbDataAdapter(strSQL, myConn) 'DataAdapter
        myda.Fill(myds, "اسم الجدول الموجود فيه درجات الطالبات")
        Me.DataGrid1.DataSource = myds.Tables(0)

    End Sub
#5

معلش اتحملوني ..

فهمي على قدي !

الأكواد دي أخوي mohcool أكتبها في البرمجة من غير ما أعمل ربط

للكونكشن و الداتا سيت و الادابتور يديوياً أو ايش ؟

و من غير ما أحتاج لربط الأداة كمبوبوكس يدوياً عن طريق خاصية بالقاعدة !!

و من ثم أحتاج كثير أزرار الإضافة و البحث و التالي و السابق لمن يستطيع

تقديم المساعدة رجاءاً لا يبخل ..

شكراً جزيلاً على كل شي

بالتوفيق

سلام

#6

نعم من غير ما تعمل شيء يدوياً هذا هو الكود ولكن هذه لقاعدة بيانات أكسس

و إن شاء الله بالنسبة للأزرار ححط كودها اليوم

#7

طبعاً هذه الأكواد للداتا ست والداتا أدابتر و الكنوكشن التي كتبتها في الكود السابق

وهذه طريقة الربط العام

ControlName.DataBindings.Add("Properties", DataSet.Tables("TableName Or Index"), "ColumnName")

بالنسبة للأزرار يجب عمل الربط للأدوات قبل كتابة الكود الخاص بها وهنا على سبيل المثال سوف نأخذ TextBox كمثال للربط

 TextBox1.DataBindings.Add("Text", DataSet1.Tables(0), "m_no")
        TextBox2.DataBindings.Add("Text", DataSet1.Tables(0), "m_name")
        TextBox3.DataBindings.Add("text", DataSet1.Tables(0), "m_reg")
        TextBox5.DataBindings.Add("text", DataSet1.Tables(0), "m_price")

أكواد الأزرار

 Private Sub Prev_record(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.BindingContext(DataSet1.Tables(0)).Position -= 1
    End Sub

    Private Sub First_record(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Me.BindingContext(DataSet1.Tables(0)).Position = 0
    End Sub

    Private Sub Next_record(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Me.BindingContext(DataSet1.Tables(0)).Position += 1
    End Sub

    Private Sub Last_record(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Me.BindingContext(DataSet1.Tables(0)).Position = Me.BindingContext(DataSet1.Tables(0)).Count - 1
    End Sub
و إذا في إستفسار أنا جاهز

تم تعديل هذه المشاركة بواسطة mohcool في 6 يناير 2005 في 12:17

#8

مشكور أخوي و الله و ما قصرت

أنا لسا ما جربت طريقة اللي أنت كتبته اللحين بس عندي سؤال

أنت تقول بالنسبة للازرار يجب عمل الربط قبل ما أكتب الكود , أنا أعرف

أربط ربط يدوي للتكست بالقاعدة .. بس أنا أبغى لما أضغط زر التالي

و السابق تتغير لي جدول الدرجات لكل طالبة اللي في الداتا جريد!..

يعني مثلاً أنا أخترت إسم طالبة من الكمبوبوكس راح ينعرض لي جدول

درجاتها في الداتا جريد ..

فزر التالي و السابق راح يمشوا لي جداول الطالبات عالداتا جريد و اسماءهم

عالكمبوبوكس بالترتيب جدول بعد جدول كل ما نقرت التالي .

فبكذا ما راح أحتاج تكستات من أصله ..

أنا مجرب عاملة قبل برنامج مكتبة بواسطة ربط التكستات بقاعدة البيانات

و عملت التالي و السابق و بحث و اضافة على البرنامج .. انما حابة المرة

دي استخدم الداتا جريد عشان تقييم مشروعي !!

فيعني لو كان فيها غلاسة تشرح لي شرح أكثر كيفية عمل التالي و السابق

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

و لو أمكن زر بحث و اضافة !!

و شكراً فعلاً على المساعدة و جزاك الله كل خير

سلام

#9

طيب ما في أبسط منها

بعد تنفيذ الكود الذي وضعته للكمبو والداتا قريد

إعملي أربع أزرار (Next,previous,First,Last)

و اكتبي التالي

زر التالي

 If Me.ComboBox1.SelectedIndex <> Me.ComboBox1.Items.Count - 1 Then
            Me.ComboBox1.SelectedIndex += 1
        End If

زر السابق

If Me.ComboBox1.SelectedIndex <> 0 Then
            Me.ComboBox1.SelectedIndex -= 1
        End If

زر الأول

            Me.ComboBox1.SelectedIndex= 0

زر الأخير

 Me.ComboBox1.SelectedIndex = Me.ComboBox1.Items.Count-1

وبهذا يكون التنقل في الكمبو بوكس وكلما تغير العنصر في الكمبو سوف يتغير في الداتا قريد

إن شاء الله يكون الموضوع مفهوم و إذا مش مفهوم يا ريت تبعتيلي الداتا بيس أكسس

و أسماء الكنترول المستعملة في المشروع(ComboBox,DataGrid)

وبكتب الكود لك وتلصقيه مثل ما هوة

المشكلة أنا عندي الإصدار 2003 ومش حينفع أعملك مثال

#10

أيوه مشكلة بجد أنا كان ودي في اصدار 2003 بس ركبته بنفسي و عمل لي مشاكل فكرهته على العموم شكراً على المساعدة .

شكرا كثير عالمساعدة الله يجزيك كل خير يا رب

سلام

تم تعديل هذه المشاركة بواسطة مشروع مبرمجة في 7 يناير 2005 في 04:59

#11

أعمل لي الربط على القاعدة دي

و أنا حطيت فيها جداول محاضرات لمعامل داخل مبنى تعليم للحاسب

يا ريت تعمل لي الربط عليها و تبين لي وين احط الاكواد

طبعا في القاعدة دي اسم المعامل اللي هي اسماء كل جدول

هي اللي راح تكون بالكمبوبوكس و كل ما اخترت اسم معمل مثلا

lab A يطلع لي جدول محاضراته

و لو ممكن زر بحث

و ثقلت دمي اكثر من اللازم الله يقدرني و ارد الخدمة

ألف شكر أخوي

سلام

my database.zip

#12

للأسف قاعدة البيانات معمولة بطريقة غير صحيحة أنا آسف إني أحكيلك هذا الكلام ولكن إذا هذه القاعدة المستعملة في مشروعك فسوف تواجهين مشاكل كثيرة و أولها مع الكود يا ريت تحكيلي ما هو مشروعك بالظبط حتى أتمكن من المساعدة

#13

القاعدة دي مو قاعدة بيانات مشروعي

بس انا اخذت منها كم جدول و حطيتهم في قاعدة منفصلة

أنا مشروعي برنامج إداري لمعهد

و عملت فيه كل شي و كان ناقص اني اعمل جداول المستويات الدراسية

و جداول المعامل الموجودة في مبنى المعهد

و بصراحة مو عارفة كيف اعمل جدول أربطه بداتا جريد خصوصا انها أول مرة

اشتغل عليها و كانت كل الجداول اللي عملتها مجرد اني اربط حقولها بتكستات

انا اللي جابة اعمله بالداتا أنه لما افتحها و اختار من الكمبوبوكس أسم مستوى

دراسي مثلاً المستوى الأول يطلع لي جدول الحصص الاسبوعي للمستوى

فيه اليوم و التاريخ و المحاضرات و المعمل اللي راح تكون فيه المحاضرة و مدربة

المحاضرة .

إذا كان ممكن تشرح لي كيف الجدول أو القاعدة اللي احتاجها هنا و انا راح اعملها حالاً

أنا كنت حابة ارسل قاعدة بيانات المشروع كاملة بس ما أقدر ابعثها في رسالة

ليك عشان مش عارفة الخاصية دي مو عندي في المنتدى أظن بسبب قلة

المشاركات

شكراً

سلام

#14

آه صحيح نسيت أكتب عناوين الحقول بالانجلش !!

بس دا السبب ؟

#15

ماشي

ممكن تبعتي قاعدة البيانات على الإميل هذا حتى أشوفها وأحاول صياغتها من جديد

em3asel@hotmail.com

و إن شاء الله نتمكن من المساعدة

#16

انا ارسلت قاعدة البيانات على الإيميل المذكور

و بالانتظار

سلام

هذا الموضوع مغلق.

مواضيع مشابهة