تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تعبئة الكمبوبوكس في الداتاغريد فيو ..
#1
اصدقائي .. انا عملت شبكة بيانات هيي الداتا غريد فيو و هي غير متصلة بجدول بقاعدة البيانات . بس بدي العمود الأول يكون كمبوبوكس .. و هاد الشي عملتو بس ما عرفت مليه بالبيانات الموجود في جدول الأصناف ... حتى ما اضطر كل مرة اكتب اسم الصنف ، يعني من الكومبوبوكس باختار الصننف و بدخل باقي البيانات بعدين برحلها عالجدول .. اذا كان بالامكان المساعة و لإلكون الشكر ..
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم 
اختي يجب ان يكون مصدر بيانات العمود اللي في DataGridView هو اسم الجدول و من ثم نحدد في الخاصية DisplayMember بيانات العمود التي نريد اظهارها
و في الخاصية Valuemember نحدد العمود الذي تستند اليه البيانات (بمعنى اذا كان كل صنف لا تريده ان يتكرر مرة ثانية في العمود) فيتوجب اسناد هذه الخاصية او اتركيها فارغة
بفرض لدي جدول اسمه dt  و فيه عمودين , او تابعي من الكود و اي شيئ لم تفهميه اطرحي سؤالك

كود :
       Dim dt As New DataTable
       Dim col1 As New DataColumn("p1", System.Type.GetType("System.Int32"))
       Dim col2 As New DataColumn("p2", System.Type.GetType("System.String"))
       dt.Columns.Add(col1) : dt.Columns.Add(col2)


       For i As Integer = 0 To 10
           Dim row As DataRow = dt.NewRow
           row("p1") = i
           row("p2") = "Tea " & i
           dt.Rows.Add(row)
       Next

       Dim ColumnCmb As New DataGridViewComboBoxColumn
       ColumnCmb.DataSource = dt
       ColumnCmb.DisplayMember = "p2"
       ColumnCmb.ValueMember = "p1"

       DataGridView1.Columns.Add(ColumnCmb)


بالتوفيق
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة:
#3
شكرا لك صديقي ابو ليلى .. و سوف اعمل على تجربة الكود ...

صديقي ابو ليلى .. يعني في شي مو مفهوم .. بعتقد طلبي اقل من هيك تعقيد .. انا عندي بالشبكة عمود رقم 0 هو الصنف و عملتو كومبوبكس و بدي مليه من جدول الاصناف ، بس بنفس الوقت ممكن اكتب صنف جديد مو موجود بقائمة الاصناف ، يعني الطريقة التي كاتبها حضرتك لا تسمحلي بكتابة صنف جديد ..
و مرة تانية بشكرك لاهتمامك .. يعني انا كنت اشتغل على الفيجول 6 و ماكنت لاقي صعوبات بالهشي بس هلق اختلف الوضع و بدي المساعدة ,, و شكرا كتير كتير لإلك ..
الرد }}}
تم الشكر بواسطة:
#4
العفو لم اقصد ان ادخلك في تعقيد الذي قصدته من كلامي عادة في برامج المبيعات او المستودعات او مشابه يكون اسم واحد للصنف
على سبيل المثال لو كان البرنامج يصدر فاتورة و تسجل الاصناف في الفاتورة فورود اسم الصنف مرتين في الفاتورة يعتبر هفوة برمجية اذ يجب ان يسجل اسم الصنف مرة واحدة و عوضا عن تكراره في الفاتورة يكون هناك حقل اخر يشير الى الكمية من هذا الصنف
ارجو ان تكون قد توضحت الصورة
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة:
#5
كلامك صحيح ، لكننا هنا الغينا لوحة المفاتيح .. ، يعني بالكمبوبوكس العادي في نختار و فينا نكتب .. هون بالطريقة الكاتبها حضرتك فينا بس نختار و ما فينا نكتب .. و بجميع الاحول شكرا لإلك صديقي ابو ليلى .. تعبتك معي
الرد }}}
تم الشكر بواسطة:
#6
   

   

   

PHP كود :
Public Class Form1

    Dim cnn 
As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Jet OLEDB:Database Password=MyDbPassword;")


 
   Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        fillDataGridViewComboBoxColumn
(0"items""title""id")
 
   End Sub



#Region " DataGridViewComboBoxColumn "

 
   Private Sub fillDataGridViewComboBoxColumn(ByVal columnIndex As IntegerByVal table As StringByVal display As StringByVal value As StringOptional ByVal where As String "")
 
       Using da As New OleDb.OleDbDataAdapter("SELECT [" display "],[" value "] FROM [" table "]"cnn)
 
           If where.Trim <> "" Then da.SelectCommand.CommandText &= " " where

            Dim dt 
As New DataTable
            da
.Fill(dt)

 
           dt.Rows.Add("** New item **"0)

 
           Dim cbColumn As DataGridViewComboBoxColumn DirectCast(DataGridView1.Columns(columnIndex), DataGridViewComboBoxColumn)
 
           cbColumn.DataSource dt
            cbColumn
.ValueMember "id"
 
           cbColumn.DisplayMember "title"

 
       End Using
    End Sub

    Private Sub DataGridView1_CellValueChanged
(ByVal sender As ObjectByVal e As System.Windows.Forms.DataGridViewCellEventArgsHandles DataGridView1.CellValueChanged
        Try
            If e
.ColumnIndex 1 AndAlso Not IsNumeric(DataGridView1.Item(e.ColumnIndexe.RowIndex).ValueThen
                DataGridView1
.Item(e.ColumnIndexe.RowIndex).Value 0
                MsgBox
("Number only")
 
               Exit Sub
            End 
If
 
           If e.ColumnIndex 2 AndAlso Not IsNumeric(DataGridView1.Item(e.ColumnIndexe.RowIndex).ValueThen
                DataGridView1
.Item(e.ColumnIndexe.RowIndex).Value 0
                MsgBox
("Number only")
 
               Exit Sub
            End 
If
 
           DataGridView1.Item(3e.RowIndex).Value DataGridView1.Item(1e.RowIndex).Value DataGridView1.Item(2e.RowIndex).Value
            If DataGridView1
.Item(3e.RowIndex).Value 0 Then
                DataGridView1
.CurrentRow.Cells(3).Style.BackColor Color.LightPink
            Else
                DataGridView1
.CurrentRow.Cells(3).Style.BackColor Color.LightGreen
            End 
If
 
       Catch ex As Exception
        End 
Try
 
   End Sub

    Private Sub DataGridView1_EditingControlShowing
(ByVal sender As ObjectByVal e As DataGridViewEditingControlShowingEventArgsHandles DataGridView1.EditingControlShowing
        If TypeOf e
.Control Is System.Windows.Forms.DataGridViewComboBoxEditingControl Then
            AddHandler TryCast
(e.ControlComboBox).SelectedIndexChangedAddressOf DataGridComboBox_SelectedIndexChanged
        End 
If
 
   End Sub
    Private Sub DataGridComboBox_SelectedIndexChanged
(ByVal sender As ObjectByVal e As EventArgs)
 
       Try
            Dim dataGridComboBox 
As ComboBox CType(senderComboBox)
 
           If dataGridComboBox.SelectedIndex = -1 Then Exit Sub
            If dataGridComboBox
.SelectedValue 0 Then
                Using frm 
As New Form2
                    If frm
.ShowDialog Windows.Forms.DialogResult.OK Then
                        Try
                            Using cmd 
As New OleDb.OleDbCommand("INSERT INTO [items] ([title], [barcode]) VALUES (@title, @barcode)"cnn)
 
                               cmd.Parameters.AddWithValue("@title"frm.TextBox1.Text.Trim)
 
                               cmd.Parameters.AddWithValue("@barcode"frm.TextBox2.Text.Trim)
 
                               If cnn.State <> ConnectionState.Open Then cnn.Open()
 
                               Dim r As Integer cmd.ExecuteNonQuery
                                cnn
.Close()
 
                               If r 0 Then
                                    fillDataGridViewComboBoxColumn
(0"items""title""id")
 
                                   dataGridComboBox.SelectedIndex dataGridComboBox.FindString(frm.TextBox1.Text.Trim)
 
                               End If
 
                           End Using
                        Catch ex 
As Exception
                            If cnn
.State <> ConnectionState.Closed Then cnn.Close()
 
                       End Try
 
                   Else
                        dataGridComboBox
.SelectedIndex = -1
                    End 
If
 
               End Using
            End 
If
 
       Catch ex As Exception
        End 
Try
 
   End Sub

#End Region


End Class 
الرد }}}
تم الشكر بواسطة: العزابي
#7
شكرا صديقي امجد 525 .. مجهود كبير ..
سوف احاول ان استفيد من الكود ...
مرة اخرى شكرا صديقي امجد
الرد }}}
تم الشكر بواسطة: amgad525 , العزابي
#8
ممكن مثال مرفق
الرد }}}
تم الشكر بواسطة:
#9
(22-05-16, 11:25 AM)حلا ابوحامضة كتب : كلامك صحيح ، لكننا هنا الغينا لوحة المفاتيح .. ، يعني بالكمبوبوكس العادي في نختار و فينا نكتب .. هون بالطريقة الكاتبها حضرتك فينا بس نختار و ما فينا نكتب .. و بجميع الاحول شكرا لإلك صديقي ابو ليلى .. تعبتك معي

ممكن مثال مرفق
الرد }}}
تم الشكر بواسطة: سعود
#10


أرجو ان يكون الرابط التالي هو المطلوب:
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف يتم تعبئة قريد فيو بدون قاعدة بيانات بشكل مباشر؟ nowiglah 1 375 01-12-23, 10:57 PM
آخر رد: Taha Okla
  تعبئة CheckListBox من قاعدة البيانات حسب الإختيار من Combobox صالح عبدالله 1 334 14-10-23, 10:26 PM
آخر رد: aljzazy
  تعبئة الكمبوبوكس دون الارتباط بالجدول .. استفسار عاجل Ali_hassn 0 242 24-09-23, 10:50 PM
آخر رد: Ali_hassn
  [VB.NET] مشكلة الكمبوبوكس Ali_hassn 3 468 09-08-23, 09:44 PM
آخر رد: Ali_hassn
  تحديد أعمدة من الداتاغريد فيو kebboud 5 551 17-06-23, 10:27 AM
آخر رد: kebboud
  تعبئة عمود معين في الداغريد kebboud 13 1,027 14-06-23, 05:07 PM
آخر رد: kebboud
  تعبئة عمود في الداتاقريد فيو من اذا تحقق شرط معين في جدول في قاعدة البيانات صالح عبدالله 2 620 21-05-23, 09:42 PM
آخر رد: صالح عبدالله
  تصفح الداتاغريد فيو kebboud 7 875 20-04-23, 12:59 AM
آخر رد: kebboud
  يرجي التعديل على المثال - تعبءة الكمبوبوكس داخل الجريد بانواع الوحدات new_programer 3 800 14-04-23, 05:31 PM
آخر رد: new_programer
  تعبئة كومبو بوكس بالاعتماد على قيمة كومبو بوكس اخر ahmaddrawshih 4 623 15-01-23, 09:49 PM
آخر رد: مصمم هاوي

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


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