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

عند غلق الفورم وفتحها مرة أخرى تظل البيانات داخل ComboBox ؟

بدأه Visual Studio في 21 سبتمبر 2010 · 6 رد · 909 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عندي Form1 وبها Button1

Form2 وبها الزر Load , وأداة ComboBox1

أقوم باستدعاء Form2 عن طريق الزر Button1 الموجود في Form1

بعد استدعاء Form2 أقوم بالضغط على الزر Load فيتم مليء ComboBox بالبيانات

وعندما أغلق Form2 وأقوم باستدعائها مرة أخرى أجد البيانات موجودة داخل ComboBox وأنا أريد عندما يتم تحميل Form2 أن يكون ComboBox فارغا ولا يتم تحميله إلا بعد الضغط على الزر Load فكيف يتم ذلك ؟

علما بأن كود تحميل البيانات داخل ComboBox هو :-

Dim ds1 As New DataSet
        Dim sql1 As String = "select * from Equipment order by id"
        ds1.Clear()
        If conn1.State = ConnectionState.Closed Then conn1.Open()
        Dim da1 As New OleDbDataAdapter(sql1, conn1)
        da1.Fill(ds1, "table1")
        If conn1.State = ConnectionState.Open Then conn1.Close()

        Cm1.DataSource = ds1.Tables("table1")
        Cm1.ValueMember = "name"

وشكرا

#2
Visual Studio كتب:

السلام عليكم

عندي Form1 وبها Button1

Form2 وبها الزر Load , وأداة ComboBox1

أقوم باستدعاء Form2 عن طريق الزر Button1 الموجود في Form1

بعد استدعاء Form2 أقوم بالضغط على الزر Load فيتم مليء ComboBox بالبيانات

وعندما أغلق Form2 وأقوم باستدعائها مرة أخرى أجد البيانات موجودة داخل ComboBox وأنا أريد عندما يتم تحميل Form2 أن يكون ComboBox فارغا ولا يتم تحميله إلا بعد الضغط على الزر Load فكيف يتم ذلك ؟

علما بأن كود تحميل البيانات داخل ComboBox هو :-

Dim ds1 As New DataSet
        Dim sql1 As String = "select * from Equipment order by id"
        ds1.Clear()
        If conn1.State = ConnectionState.Closed Then conn1.Open()
        Dim da1 As New OleDbDataAdapter(sql1, conn1)
        da1.Fill(ds1, "table1")
        If conn1.State = ConnectionState.Open Then conn1.Close()

        Cm1.DataSource = ds1.Tables("table1")
        Cm1.ValueMember = "name"

وشكرا

أستخدم الامر

combobox.items.clear

ويمكن أن تضع هذا الأمر فى ال form.load

وفى المثال بتاعك يكون الأمر كالتالى

Cm1.items.clear

بالتوفيق

كل من فى الوجود يطلب صيداً :::: غير ان الشباك مختلفات

#4

السلام عليكم

ضع clear قبل سطر الربط مع مصدر البيانات اي كمايلي :

Dim ds1 As New DataSet
        Dim sql1 As String = "select * from Equipment order by id"
        ds1.Clear()
        If conn1.State = ConnectionState.Closed Then conn1.Open()
        Dim da1 As New OleDbDataAdapter(sql1, conn1)
        da1.Fill(ds1, "table1")
        If conn1.State = ConnectionState.Open Then conn1.Close()
  Cm1.Items.Clear()
        Cm1.DataSource = ds1.Tables("table1")
        Cm1.ValueMember = "name"

ومن الافضل عند طلب الفورم استخدام الكود التالي بدل form2.ShowDialog

 dim frm2 as new from2 
            frm2.ShowDialog
#5
TareqVB كتب:

السلام عليكم

ضع clear قبل سطر الربط مع مصدر البيانات اي كمايلي :

Dim ds1 As New DataSet
        Dim sql1 As String = "select * from Equipment order by id"
        ds1.Clear()
        If conn1.State = ConnectionState.Closed Then conn1.Open()
        Dim da1 As New OleDbDataAdapter(sql1, conn1)
        da1.Fill(ds1, "table1")
        If conn1.State = ConnectionState.Open Then conn1.Close()
  Cm1.Items.Clear()
        Cm1.DataSource = ds1.Tables("table1")
        Cm1.ValueMember = "name"

ومن الافضل عند طلب الفورم استخدام الكود التالي بدل form2.ShowDialog

 dim frm2 as new from2 
            frm2.ShowDialog

جزاك الله خيرا

الحمد لله نجحت الطريقة

#6

اخي الكريم يفضل ايضاً اعادة تهيئة الشاشة عند الانتهاء منها

وذالك عن طريق الكود التالي

Me.Dispose()

وذالك في حدث FormClosing

يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل

سبحان الله وبحمده ... سبحان الله العظيم

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…