تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] نقل البيانات من الكمبو الي التريفيو
#1
السلام عليكم ورحمة الله وبركاتة 

لدي اكتر من كمبو بوكس حوالي 5 كمبو كل كمبو بة اكتر من عنصر بداخلة والبعض قد يكون فارغ لايوجد بية عناصر او بية عناصر 

1- المطلوب ما اريدة هوا نقل اسم الكمبو الي التريفيو كأب والعناصر بداخلة كابناء  العناصراو الايتم  غير محددة.
 اذا كان الكمبو فارغ بمعني احد الكمبو الخمس او تنين وا هكذا فارغ يتم تجاهلة.
 واذاكان بية بيانات يتم نقلة للتريفيو حسب وضع الكمبو من الاول للاخر بمعني اول كمبو ياخذ اول اب والثاني ثاني اب والثالث ثالث اب والعناصر بنفس الترتيب 

محاولتي والنتيجة سيئة جدا

كود :
 Public Sub TREEVIEWFILL()
       TreeView1.Nodes.Clear()

       If Com_A.SelectedIndex > -1 Then
           TreeView1.Nodes.Add(Com_A.Text, Com_A.Text)
           For i = 0 To Com_A.Items.Count - 1

               TreeView1.Nodes.Add(Com_A.Text, Com_A.Items(i).ToString)
           Next
       End If

       If Com_B.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Text)
           For i = 0 To Com_B.Items.Count - 1

               TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Items(i).ToString)
           Next

       End If

       If Com_C.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Text)
           For i = 0 To Com_C.Items.Count - 1
               TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Items(i).ToString)
           Next

       End If
   End Sub
الرد
تم الشكر بواسطة:
#2
(04-04-21, 07:57 PM)احمد 2021 كتب : السلام عليكم ورحمة الله وبركاتة 

لدي اكتر من كمبو بوكس حوالي 5 كمبو كل كمبو بة اكتر من عنصر بداخلة والبعض قد يكون فارغ لايوجد بية عناصر او بية عناصر 

1- المطلوب ما اريدة هوا نقل اسم الكمبو الي التريفيو كأب والعناصر بداخلة كابناء  العناصراو الايتم  غير محددة.
 اذا كان الكمبو فارغ بمعني احد الكمبو الخمس او تنين وا هكذا فارغ يتم تجاهلة.
 واذاكان بية بيانات يتم نقلة للتريفيو حسب وضع الكمبو من الاول للاخر بمعني اول كمبو ياخذ اول اب والثاني ثاني اب والثالث ثالث اب والعناصر بنفس الترتيب 

محاولتي والنتيجة سيئة جدا

كود :
 Public Sub TREEVIEWFILL()
       TreeView1.Nodes.Clear()

       If Com_A.SelectedIndex > -1 Then
           TreeView1.Nodes.Add(Com_A.Text, Com_A.Text)
           For i = 0 To Com_A.Items.Count - 1

               TreeView1.Nodes.Add(Com_A.Text, Com_A.Items(i).ToString)
           Next
       End If

       If Com_B.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Text)
           For i = 0 To Com_B.Items.Count - 1

               TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Items(i).ToString)
           Next

       End If

       If Com_C.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Text)
           For i = 0 To Com_C.Items.Count - 1
               TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Items(i).ToString)
           Next

       End If
   End Sub

السلام عليكم

تفضل يا أخي

حط الكود التالي في اي زر امر
كود :
       Dim TreeView1 As TreeView
       TreeView1 = New TreeView()
       TreeView1.Location = New Point(10, 10)
       TreeView1.Size = New Size(150, 150)

       Me.Controls.Add(TreeView1)
       TreeView1.Nodes.Clear()
       'Creating the root node
       Dim root = New TreeNode("Application")
       TreeView1.Nodes.Add(root)

       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox1"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox2"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox3"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox4"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox5"))
     
       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(1).Nodes.Add(New TreeNode(ComboBox2.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(2).Nodes.Add(New TreeNode(ComboBox3.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(3).Nodes.Add(New TreeNode(ComboBox4.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(4).Nodes.Add(New TreeNode(ComboBox5.Items(i)))
       Next
الرد
تم الشكر بواسطة: احمد 2021 , Ronald
#3
(04-04-21, 11:21 PM)messry كتب :
(04-04-21, 07:57 PM)احمد 2021 كتب : السلام عليكم ورحمة الله وبركاتة 

لدي اكتر من كمبو بوكس حوالي 5 كمبو كل كمبو بة اكتر من عنصر بداخلة والبعض قد يكون فارغ لايوجد بية عناصر او بية عناصر 

1- المطلوب ما اريدة هوا نقل اسم الكمبو الي التريفيو كأب والعناصر بداخلة كابناء  العناصراو الايتم  غير محددة.
 اذا كان الكمبو فارغ بمعني احد الكمبو الخمس او تنين وا هكذا فارغ يتم تجاهلة.
 واذاكان بية بيانات يتم نقلة للتريفيو حسب وضع الكمبو من الاول للاخر بمعني اول كمبو ياخذ اول اب والثاني ثاني اب والثالث ثالث اب والعناصر بنفس الترتيب 

محاولتي والنتيجة سيئة جدا

كود :
 Public Sub TREEVIEWFILL()
       TreeView1.Nodes.Clear()

       If Com_A.SelectedIndex > -1 Then
           TreeView1.Nodes.Add(Com_A.Text, Com_A.Text)
           For i = 0 To Com_A.Items.Count - 1

               TreeView1.Nodes.Add(Com_A.Text, Com_A.Items(i).ToString)
           Next
       End If

       If Com_B.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Text)
           For i = 0 To Com_B.Items.Count - 1

               TreeView1.Nodes(Com_A.Text).Nodes.Add(Com_B.Text, Com_B.Items(i).ToString)
           Next

       End If

       If Com_C.SelectedIndex > -1 Then
           TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Text)
           For i = 0 To Com_C.Items.Count - 1
               TreeView1.Nodes(Com_A.Text).Nodes(Com_B.Text).Nodes.Add(Com_C.Text, Com_C.Items(i).ToString)
           Next

       End If
   End Sub

السلام عليكم

تفضل يا أخي

حط الكود التالي في اي زر امر
كود :
       Dim TreeView1 As TreeView
       TreeView1 = New TreeView()
       TreeView1.Location = New Point(10, 10)
       TreeView1.Size = New Size(150, 150)

       Me.Controls.Add(TreeView1)
       TreeView1.Nodes.Clear()
       'Creating the root node
       Dim root = New TreeNode("Application")
       TreeView1.Nodes.Add(root)

       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox1"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox2"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox3"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox4"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox5"))
     
       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(1).Nodes.Add(New TreeNode(ComboBox2.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(2).Nodes.Add(New TreeNode(ComboBox3.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(3).Nodes.Add(New TreeNode(ComboBox4.Items(i)))
       Next

       For i As Integer = 0 To ComboBox1.Items.Count - 1
           TreeView1.Nodes(0).Nodes(4).Nodes.Add(New TreeNode(ComboBox5.Items(i)))
       Next


اشكر حضرتك علي الرد

انا استخدمت الطريقة واشتغل الكود  ..
 ولكن عند استخدام عنصر اخر بالكمبو بوكس يظل الفروع القديمة محفوظة علي الرغم من مسح كل البيانات بالاداة الاب والفروع لما تظل الفروع محفوظة

كود :
Public Sub TREEVIEWFILL()
       Dim cboxes = {Com_a, Com_b, Com_c, Com_d, Com_e, Com_f, Com_g, Com_h}
       TreeView1.BeginUpdate()
       TreeView1.Nodes.Clear()

       Dim selectv As String = ""
       Dim child As String = ""
       Dim subchild As String = ""

       For Each cmb In cboxes
           If cmb.Items.Count > 0 AndAlso cmb.SelectedIndex > -1 Then
               Dim parent As New TreeNode(cmb.Name.ToString.Remove(0, cmb.Name.ToString.IndexOf("_")).Replace("_", ""))
               'parent.Nodes(child).Nodes.Clear()

               For i = 0 To cmb.SelectedIndex
                   child = cmb.Items(i).ToString
                   parent.Nodes.Add(child, child)
               Next
               TreeView1.Nodes.Add(parent)

           End If

       Next

       TreeView1.EndUpdate()
   End Sub
الرد
تم الشكر بواسطة:
#4
بصراحة ما فهمت مقصدك طالما الكود شغال
الرد
تم الشكر بواسطة: احمد 2021
#5
(05-04-21, 01:09 AM)messry كتب : بصراحة ما فهمت مقصدك طالما الكود شغال



يوجد خطاء بسيط بطريقة الكمبو حيث يستعرض العناصر بالفروع بناء علي عدد مرات تكرارها وليس علي اساس المحدد .

بمعني لو انا اخترت اول ايتم بالكمبو يصبح الفروع واحد 
لو اخترت الايتم  رقم 3  بالكمبو الفروع تصبح 3  يعرضهم من اول واحد الي رقم 3 وانا لم احدد غير العنصر 3 بالكمبو هكذا ..
الرد
تم الشكر بواسطة:
#6
بمعنى آخر أنت تريد أن يتم عرض العنصر المشاهد أو المختار فقط من الكومبو
؟؟؟؟؟؟؟؟؟؟
الرد
تم الشكر بواسطة:
#7
(05-04-21, 01:32 AM)messry كتب : بمعنى آخر أنت تريد أن يتم عرض العنصر المشاهد أو المختار فقط من الكومبو
؟؟؟؟؟؟؟؟؟؟

تمام
الرد
تم الشكر بواسطة:
#8
(05-04-21, 01:32 AM)احمد 2021 كتب :
(05-04-21, 01:32 AM)messry كتب : بمعنى آخر أنت تريد أن يتم عرض العنصر المشاهد أو المختار فقط من الكومبو
؟؟؟؟؟؟؟؟؟؟

تمام


أخي الفاضل

استبدل الكود هذا
كود :
      For i As Integer = 0 To ComboBox1.Items.Count - 1
          TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.Items(i)))
      Next

بهذا
كود :
 
          TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.text))
     


في الجميع
مع مراعاة اسم الكومبو
الرد
تم الشكر بواسطة: احمد 2021 , احمد 2021 , Ronald
#9
(05-04-21, 01:37 AM)messry كتب :
(05-04-21, 01:32 AM)احمد 2021 كتب :
(05-04-21, 01:32 AM)messry كتب : بمعنى آخر أنت تريد أن يتم عرض العنصر المشاهد أو المختار فقط من الكومبو
؟؟؟؟؟؟؟؟؟؟

تمام


أخي الفاضل

استبدل الكود هذا
كود :
      For i As Integer = 0 To ComboBox1.Items.Count - 1
          TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.Items(i)))
      Next

بهذا
كود :
 
          TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(ComboBox1.text))
     


في الجميع
مع مراعاة اسم الكومبو



دة مثال في الكمبو والطريقة الخاص بك والكمبو والطريقة الي صممتها والخطاء لازال موجود تقدر تراجعة بالفيجول بيسك 2019

اختار اكتر من كمبو وايتم محدد  وشوف النتيجة بالتريفيو وارجع عيد الاختيار هيظهر الخطاء في تكرار البيانات 


.rar   WindowsApp3.rar (الحجم : 47.82 ك ب / التحميلات : 5)
.rar   WindowsApp3.rar (الحجم : 47.82 ك ب / التحميلات : 5)
الرد
تم الشكر بواسطة:
#10
السلام عليكم
من نظرة سريعة جربها وعطني خبر

اسمح لي باستبدال الجزء هذا

كود :
   Public Sub trevfil()
       TreeView1.BeginUpdate()
       TreeView1.Nodes.Clear()
       Dim root = New TreeNode("Application")
       TreeView1.Nodes.Add(root)

       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox1"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox2"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox3"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox4"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox5"))


       For i As Integer = 0 To Com_a.Items.Count - 1
           TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(Com_a.Text))
       Next

       For i As Integer = 0 To Com_b.Items.Count - 1
           TreeView1.Nodes(0).Nodes(1).Nodes.Add(New TreeNode(Com_b.Text))
       Next

       For i As Integer = 0 To Com_c.Items.Count - 1
           TreeView1.Nodes(0).Nodes(2).Nodes.Add(New TreeNode(Com_c.Text))
       Next

       For i As Integer = 0 To Com_d.Items.Count - 1
           TreeView1.Nodes(0).Nodes(3).Nodes.Add(New TreeNode(Com_d.Text))
       Next

       For i As Integer = 0 To Com_e.Items.Count - 1
           TreeView1.Nodes(0).Nodes(4).Nodes.Add(New TreeNode(Com_e.Text))
       Next
       TreeView1.EndUpdate()
   End Sub


بهذا
كود :
   Public Sub trevfil()
       TreeView1.BeginUpdate()
       TreeView1.Nodes.Clear()
       Dim root = New TreeNode("Application")
       TreeView1.Nodes.Add(root)

       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox1"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox2"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox3"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox4"))
       TreeView1.Nodes(0).Nodes.Add(New TreeNode("ComboBox5"))



           TreeView1.Nodes(0).Nodes(0).Nodes.Add(New TreeNode(Com_a.Text))
           TreeView1.Nodes(0).Nodes(1).Nodes.Add(New TreeNode(Com_b.Text))
           TreeView1.Nodes(0).Nodes(2).Nodes.Add(New TreeNode(Com_c.Text))
           TreeView1.Nodes(0).Nodes(3).Nodes.Add(New TreeNode(Com_d.Text))
           TreeView1.Nodes(0).Nodes(4).Nodes.Add(New TreeNode(Com_e.Text))

       TreeView1.EndUpdate()
   End Sub
الرد
تم الشكر بواسطة: Ronald


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة Provider للاتصال بقاعدة البيانات نيمو 3 76 22-07-21, 09:59 PM
آخر رد: نيمو
  الاستعلام عن البيانات في عام محدد aftfm 2 169 18-07-21, 02:10 PM
آخر رد: abomo3ath
  [سؤال] كود لحذف جميع البيانات من قاعدة البيانات Necro PC 11 316 17-07-21, 08:30 PM
آخر رد: Jounior_P
  [سؤال] استيراد بيانات لقاعدة البيانات وعمل مقارنة nandy2016 2 1,150 16-07-21, 02:12 PM
آخر رد: إليسار
  [VB.NET] انشاء progress bar يعمل عند الاستيراد من قاعدة البيانات adam mostafa 9 545 14-07-21, 01:45 AM
آخر رد: kebboud
  [VB.NET] DataGridView تأخذ وقتاً كثيراً في تحميل البيانات adam mostafa 4 296 27-06-21, 04:31 PM
آخر رد: adam mostafa
  استفسار عن اللست فيو وعرض الصور من قاعدة البيانات SQL Owz 1 202 27-06-21, 09:35 AM
آخر رد: Owz
  اريد تفريغ بيانات جدول الى جدول اخر مع حذف البيانات التى فى الجدول المفرغ منه خالد كامل1 1 264 19-06-21, 10:01 PM
آخر رد: خالد كامل1
  [تم الحل] اضافة صورة لقاعدة البيانات اكسس anes 2 305 12-06-21, 02:16 AM
آخر رد: anes
  [VB.NET] مطلوب تعديل في قاعدة البيانات nrkarat 0 212 09-06-21, 01:02 AM
آخر رد: nrkarat

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم