السلام عليكم ورحمة الله وبركاته
تحية طيبة لكل الاخوه في هذا المنتدى الطيب
ارجو من من اعهل العلم والمعرفة المساعدة بتوضيح امكانية فتح واجهة جديد بالضغط الزدوج على خلية معينه في الداتا جريد تخص مثلا بيانات هذه الخلية
وبارك الله بكم
اخوكم
م.محمد
السلام عليكم ورحمة الله وبركاته
تحية طيبة لكل الاخوه في هذا المنتدى الطيب
ارجو من من اعهل العلم والمعرفة المساعدة بتوضيح امكانية فتح واجهة جديد بالضغط الزدوج على خلية معينه في الداتا جريد تخص مثلا بيانات هذه الخلية
وبارك الله بكم
اخوكم
م.محمد
السلام عليكم ورحمة الله وبركاته
اخواني الأعزاء ارجو التكرم والمساعدة فيما تم طلبه ولكم جزيل الشكر والعرفان
اخوكم
م.محمد نفاع
ابو عبيده
السلام عليكم ورحمة الله وبركاته
ايش يا شباب وين المبدعين ماني سامع من حد شي هو الموضوع معقد والا سهل وهلا ما حد امعبرنا ، شيء من التفاعل من فضلكم
اخوكم
م.محمد
السلام عليكم و رحمة الله و بركاته
بالنسبة لسؤلك حسب ما فهمت انك تريد أن يظهر فورم به بيانات الخلية عند الضغط على الخلية مرتين هل هذا ما تقصده ؟
السلام عليكم و رحمة الله و بركاته
بالنسبة لسؤالك يمكنك استخدام الإجراء CellDoubleClick التابع للأداة و المثال التالي يوضح كيفية عمل ذلك :
Public Class Form1 Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs)Handles DataGridView1.CellDoubleClick Form2.TextBox1.Text = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value Form2.ShowDialog() End Sub End Class
;) مع خالص تحياتي ،،،
تم تعديل هذه المشاركة بواسطة أبو السيد عدنان في 20 أغسطس 2007 في 11:25
السلان عليكم ورحمة الله وبركاته
اخي الكريم أبو السيد عدنان بارك الله فيك وعلمك ماينفعك ونفعك بما علمك
لقد اجبت على سؤالي مما دفعني للطمع بكم والاستزاده منكم ان سمحتم لي وتوضيح كيف يمكن اختيار عنصر محدد من الفورم الجديد لنمي به الخاية التي تمفتحها مع ضرورة التوضيح ان كل خلية في الداتا جريد يجب ان تفتح فورم خاص بعامود الداتا مثلا ان كان عامود الاصنف يفتح نافذة الاصناف ويختار منه الصنف المراد وعامود الشكل يفتح نافذة التي تخص انواشكال الصنف
وبارك الله فيك على اهتمامك
اخوك
م.محمد
السلام عليكم ورحمة الله وبركاته
ايش يا شباب وين المبدعين ماني سامع من حد شي هو الموضوع معقد والا سهل وهلا ما حد امعبرنا ، شيء من التفاعل من فضلكم
اخوكم
م.محمد
1- in Public Declaration use:
Dim WithEvents ColumnTextBox As TextBox
2- in DataGrid1_CurrentCellChanged Event use :
Private Sub DataGrid1_CurrentCellChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged
'Set DatagridTextBox in ColumnTextBox
If DataGrid1.TableStyles(0).GridColumnStyles(DataGrid1.CurrentCell.ColumnNumber).GetType.Name = "DataGridTextColumn" Then
Dim SelectedCol As DataGridTextColumn = CType(DataGrid1.TableStyles(0).GridColumnStyles(DataGrid1.CurrentCell.ColumnNumber), DataGridTextColumn)
ColumnTextBox = SelectedCol.TextBox
End If
End Sub
3- in ColumnTextBox_DoubleClick event use :
Private Sub ColumnTextBox_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ColumnTextBox.DoubleClick
Dim ColName As String = DataGrid1.TableStyles(0).GridColumnStyles.Item(DataGrid1.CurrentCell.ColumnNumber).MappingName
Dim ColNo As Integer = DataGrid1.CurrentCell.ColumnNumber
MsgBox("hi")
End Subالسلام عليكم ورحمة الله وبركاته
اخي الكريم وليد مندني
بارك الله فيك وجزاك الله كل خير ، وعلمك ما ينفعك ونفعك بما علمك
ارجو ان يعينك الله وان تتكرم علي بمثال بسي\ ان سمحت
اخوك
م.محمد
السلام عليكم و رحمة الله و بركاته
:^) أخي الكريم آسف على تأخري في الاجابة على أسئلتك
أشكر الأخ وليد مندني على مجهوده ...
سيصبح الكود في الشاشة الرئيسية بعد التعديل :
Public Class Form1
Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
If e.ColumnIndex = 0 Then
Form2.ComboBox1.Text = DataGridView1.Rows(e.RowIndex).Cells(0).Value
Form2.ShowDialog()
ElseIf e.ColumnIndex = 1 Then
Form3.ComboBox1.Text = DataGridView1.Rows(e.RowIndex).Cells(1).Value
Form3.ShowDialog()
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
DataGridView1.Rows.Add("صنف رقم 1", "شكل رقم 5")
DataGridView1.Rows.Add("صنف رقم 2", "شكل رقم 8")
DataGridView1.Rows.Add("صنف رقم 6", "شكل رقم 2")
DataGridView1.AllowUserToAddRows = False
DataGridView1.AllowUserToDeleteRows = False
End Sub
End Classو سنحتاج إلى شاشتين Form2 للأصناف و Form3 لأشكال الأصناف و هذا هو كود form2
Public Class Form2 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Form1.DataGridView1.EndEdit() 'انهاء تحرير الخلية المحددة Form1.DataGridView1.Update() ' تحديث الداتا جريد Close() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form1.DataGridView1.CurrentCell.Value = ComboBox1.SelectedItem Form1.DataGridView1.EndEdit() 'انهاء تحرير الخلية المحددة Form1.DataGridView1.Update() ' تحديث الداتا جريد Close() ' إغلاق الفورم End Sub End Class
و هذا كود form3
Public Class Form3 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Form1.DataGridView1.EndEdit() 'انهاء تحرير الخلية المحددة Form1.DataGridView1.Update() ' تحديث الداتا جريد Close() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form1.DataGridView1.CurrentCell.Value = ComboBox1.SelectedItem Form1.DataGridView1.EndEdit() 'انهاء تحرير الخلية المحددة Form1.DataGridView1.Update() ' تحديث الداتا جريد Close() End Sub End Class
جرب الكود الذي في المرفقات ، أرجو أن يجيب على أسئلتك .
;) مع خالص تحياتي ،،،
تم تعديل هذه المشاركة بواسطة أبو السيد عدنان في 25 أغسطس 2007 في 09:31
جزاك الله كل خير اخى أبو السيد عدنان ، تحياتى
السلام عليكم ورحمة الله وبركاته
الاخوه الكرام
بارك الله فيكم جميعا من ارشد ومن حاول المساعده واخص الأخوه أبو السيد عدنان والاخ وليد مندني واخبركم ان الفكرة واضحة وقد انرتم دربا جديدا لي انار الله دروبكم بالخير
اخوكم
م.محمد
السلام عليكم ورحمة الله وبركاته
وكل عام وانتم بخير
الاخوه الكرام ،الاخ أبو السيد عدنان
بارك الله فيكم ، على مجهودكم ، ولكن قد واجهتني مشكل في حال النقر على راس DataGrid حيث تظهر الرسالة التالية
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
وحيث انني لا أستطيع الاستغناء ( اخفاء ) عنوان الاعمده والتي قد تحل المشكلة فكيف يمكن تجاوز هذا الخطا
وبارك الله فيكم
اخوكم
م.محمد نفاع
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…