تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
نقل بيانات DataGridView1 الى DataGridView2 و تحويل قيمة موجبة الى سالبة
#1
السلام عليكم اخوتي

لدي DataGridView1 و بها 2 من العمود
العمود الاول : اسم الصنف
العمود الثاني : قيمة الصنف
 
اريد نقل بيانات الاعمدة من DataGridView1 الى DataGridView2
 
ولكن اريد قيمة العمود الثاني و اسمه (قيمة الصنف ) يتم نقله بالسالب
 
بمعنا
 


         من                                                                                         الى
DataGridView1                                                                  DataGridView2
 
اسم الصنف          قيمة الصنف                                         اسم الصنف          قيمة الصنف
 
بنطلون جينز                250                                                بنطلون جينز                -250
قميص لكرا                  75                                                  قميص لكرا                  -75


و شكرا لكم
الرد }}}
تم الشكر بواسطة:
#2
ارفع مثال لتسهيل التعديل وحل المشكلة .
الرد }}}
تم الشكر بواسطة: سعود
#3
For n as integer = 0 to dgv1. Rowcount-1
Dgv1.rows(n).cells(1).value = Dgv2.rows(n).cells(1).value
Next
الرد }}}
تم الشكر بواسطة: سعود , سعود
#4
مثال بسيط من دون قاعدة بيانات.
نسخ محتويات الصفوف من Datagridview1 الى Datagridview2 مع عكس القيمة من موجب الى سالب حسبما فهمته من السؤال.


الملفات المرفقة
.zip   For_nabil.1710.zip (الحجم : 190.06 ك ب / التحميلات : 69)
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة:
#5
(23-04-18, 03:41 PM)حريف برمجة كتب : ارفع مثال لتسهيل التعديل وحل المشكلة .

المثال فى المرفقات اخي


الملفات المرفقة
.rar   WindowsApplication1.rar (الحجم : 177.34 ك ب / التحميلات : 36)
الرد }}}
تم الشكر بواسطة: sendbad100
#6
(23-04-18, 03:10 PM)nabil.1710 كتب : السلام عليكم اخوتي

لدي DataGridView1 و بها 2 من العمود
العمود الاول : اسم الصنف
العمود الثاني : قيمة الصنف
 
اريد نقل بيانات الاعمدة من DataGridView1 الى DataGridView2
 
ولكن اريد قيمة العمود الثاني و اسمه (قيمة الصنف ) يتم نقله بالسالب
 
بمعنا
 


         من                                                                                         الى
DataGridView1                                                                  DataGridView2
 
اسم الصنف          قيمة الصنف                                         اسم الصنف          قيمة الصنف
 
بنطلون جينز                250                                                بنطلون جينز                -250
قميص لكرا                  75                                                  قميص لكرا                  -75


و شكرا لكم

هذا كود مقتبس من مثال الأخ سعود ينقل لك السجل بعد النقر عليه في الداتا قريد فيو 1 إلى الداتا قريد فيو 2 ويتم حذفه من الداتا قريد فيو 1 مع تغيير الإشارة إلى سالب والعكس .

   

هذا كود الفورم لود :

كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       DataGridView1.Rows.Add("Saud", "10")
       DataGridView1.Rows.Add("Mady", "20")
       DataGridView1.Rows.Add("Ali", "25")
       DataGridView1.Rows.Add("Mohammad", "30")
       DataGridView1.Rows.Add("Majed", "35")
       DataGridView1.Rows.Add("Abdullah", "40")
       DataGridView1.Rows.Add("Khaled", "48")
       DataGridView1.Rows.Add("Hmod", "52")
   End Sub


وهذا كود الداتا قريد فيو 1 حدث CellMouseClick

كود :
Private Sub DataGridView1_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick
       DataGridView2.Rows.Add(DataGridView1.Rows(e.RowIndex).Cells(0).Value, -Val(DataGridView1.Rows(e.RowIndex).Cells(1).Value))

       DataGridView1.Rows.RemoveAt(e.RowIndex)
   End Sub

وهذا كود الداتا قريد فيو 2 حدث CellMouseClick

كود :
Private Sub DataGridView2_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView2.CellMouseClick
       DataGridView1.Rows.Add(DataGridView2.Rows(e.RowIndex).Cells(0).Value, Math.Abs(Val(DataGridView2.Rows(e.RowIndex).Cells(1).Value)))

       DataGridView2.Rows.RemoveAt(e.RowIndex)
   End Sub
الرد }}}
تم الشكر بواسطة: sendbad100
#7
(25-04-18, 07:45 AM)حريف برمجة كتب :
(23-04-18, 03:10 PM)nabil.1710 كتب : السلام عليكم اخوتي

لدي DataGridView1 و بها 2 من العمود
العمود الاول : اسم الصنف
العمود الثاني : قيمة الصنف
 
اريد نقل بيانات الاعمدة من DataGridView1 الى DataGridView2
 
ولكن اريد قيمة العمود الثاني و اسمه (قيمة الصنف ) يتم نقله بالسالب
 
بمعنا
 


         من                                                                                         الى
DataGridView1                                                                  DataGridView2
 
اسم الصنف          قيمة الصنف                                         اسم الصنف          قيمة الصنف
 
بنطلون جينز                250                                                بنطلون جينز                -250
قميص لكرا                  75                                                  قميص لكرا                  -75


و شكرا لكم

هذا كود مقتبس من مثال الأخ سعود ينقل لك السجل بعد النقر عليه في الداتا قريد فيو 1 إلى الداتا قريد فيو 2 ويتم حذفه من الداتا قريد فيو 1 مع تغيير الإشارة إلى سالب والعكس .



هذا كود الفورم لود :

كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       DataGridView1.Rows.Add("Saud", "10")
       DataGridView1.Rows.Add("Mady", "20")
       DataGridView1.Rows.Add("Ali", "25")
       DataGridView1.Rows.Add("Mohammad", "30")
       DataGridView1.Rows.Add("Majed", "35")
       DataGridView1.Rows.Add("Abdullah", "40")
       DataGridView1.Rows.Add("Khaled", "48")
       DataGridView1.Rows.Add("Hmod", "52")
   End Sub


وهذا كود الداتا قريد فيو 1 حدث CellMouseClick

كود :
Private Sub DataGridView1_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick
       DataGridView2.Rows.Add(DataGridView1.Rows(e.RowIndex).Cells(0).Value, -Val(DataGridView1.Rows(e.RowIndex).Cells(1).Value))

       DataGridView1.Rows.RemoveAt(e.RowIndex)
   End Sub

وهذا كود الداتا قريد فيو 2 حدث CellMouseClick

كود :
Private Sub DataGridView2_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView2.CellMouseClick
       DataGridView1.Rows.Add(DataGridView2.Rows(e.RowIndex).Cells(0).Value, Math.Abs(Val(DataGridView2.Rows(e.RowIndex).Cells(1).Value)))

       DataGridView2.Rows.RemoveAt(e.RowIndex)
   End Sub
شكرا  لك اخي ولكن الفكرة المطلوبة ليس بنفس الصورة البيانات يتم نقلها كتلة واحدة

و حقل القيمة يتم نقله بالسالب

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

(23-04-18, 08:59 PM)سعود كتب : مثال بسيط من دون قاعدة بيانات.
نسخ محتويات الصفوف من Datagridview1 الى Datagridview2 مع عكس القيمة من موجب الى سالب حسبما فهمته من السؤال.

شكرا لك اخي سعود 

الفكرة المطلوبة غير ذلك 

هذا مثال بقاعدة بيانات اريد التعديل عليه

وشكرا لك اخي


الملفات المرفقة
.rar   WindowsApplication1.rar (الحجم : 177.34 ك ب / التحميلات : 33)
.rar   WindowsApplication1.rar (الحجم : 177.34 ك ب / التحميلات : 38)
الرد }}}
تم الشكر بواسطة:
#8
ضع اشارة السالب فقط .

مثال :

كود :
Try
           Me.AaaaDataSet.فرعي.Clear()
           For indexrow As Int16 = 0 To Me.DataGridView2.RowCount - 2
               Dim dr As DataRow
               dr = Me.AaaaDataSet.فرعي.NewRow

               dr("names") = Me.DataGridView2.Rows(indexrow).Cells(1).Value
               dr("price") = Me.DataGridView2.Rows(indexrow).Cells(2).Value
               dr("Total") = Me.DataGridView2.Rows(indexrow).Cells(3).Value  'اريد هذا الحقل يتم نقله بالسالب و شكرا

'العمود الذي تريد ادراج اشارة السالب فيه يصبح هذا لاحظ قبل الحرفين Me:
 dr("Total") = -Me.DataGridView2.Rows(indexrow).Cells(3).Value


               Me.AaaaDataSet.فرعي.Rows.Add(dr)
           Next
       Catch ex As Exception
           MsgBox(ex.Message, MsgBoxStyle.Critical)
       End Try
الرد }}}
تم الشكر بواسطة: nabil.1710
#9
(25-04-18, 03:50 PM)حريف برمجة كتب : ضع اشارة السالب فقط .

مثال :

كود :
Try
           Me.AaaaDataSet.فرعي.Clear()
           For indexrow As Int16 = 0 To Me.DataGridView2.RowCount - 2
               Dim dr As DataRow
               dr = Me.AaaaDataSet.فرعي.NewRow

               dr("names") = Me.DataGridView2.Rows(indexrow).Cells(1).Value
               dr("price") = Me.DataGridView2.Rows(indexrow).Cells(2).Value
               dr("Total") = Me.DataGridView2.Rows(indexrow).Cells(3).Value  'اريد هذا الحقل يتم نقله بالسالب و شكرا

'العمود الذي تريد ادراج اشارة السالب فيه يصبح هذا لاحظ قبل الحرفين Me:
 dr("Total") = -Me.DataGridView2.Rows(indexrow).Cells(3).Value


               Me.AaaaDataSet.فرعي.Rows.Add(dr)
           Next
       Catch ex As Exception
           MsgBox(ex.Message, MsgBoxStyle.Critical)
       End Try

شكرا لك اخي : الامر يكمن فى السالب
شكرا لك
الرد }}}
تم الشكر بواسطة:



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


يقوم بقرائة الموضوع: