تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كلاس لملئ الجدول و الكومبو بوكس الموجودة بداخله
#1
مرحبا اخواني الاعزاء في هذا اليوم اقدم لكم كلاس يقوم بتعبئة الداتا غريد فيو مع الكومبو بوكس الموجودة بداخله .

الكلاس :

PHP كود :
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace 
FillDataGridViewAndComboBox
{
 
   class FillDataGridViewAndComboBoxCLS
    
{
 
       static SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=Accounts;Integrated Security=True");
 
       /// <summary>
 
       /// تعبئة الغريد فيو و الكمبو بوكس اللي في الغريد فيو
 
       /// </summary>
 
       /// <param name="Dgv">اسم الداتاغريد فيو على الفورم</param>
 
       /// <param name="playerssql">الاستعلام المستخدم</param>
 
       /// <param name="FilterColumnName">اذا كان هناك بحث ضع اسم العامود المراد البحث فيه</param>
 
       /// <param name="RowFilterValue">القيمة المراد البحث عنها</param>
 
       /// <param name="ColName">اسم العامود الذي تريد تعبئة الكومبو الخاص بالغريد</param>
 
       /// <param name="ColInt">ترتيب العامود بالداتا غريد فيو</param>
 
       public static void FillDataGridViewAndComboBox(DataGridView Dgvstring SqlStringstring FilterColumnNamestring RowFilterValuestring ColNameint ColInt)
 
       {
 
           DataView dv = new DataView();
 
           dv loadData(SqlString).DefaultView;
 
           if (RowFilterValue.Length 0)
 
           {
 
               int value 0;
 
               if (Int32.TryParse(RowFilterValue.Trim(), out value))
 
               {
 
                   dv.RowFilter " " FilterColumnName " = " RowFilterValue;
 
               }
 
               else
                
{
 
                   dv.RowFilter " " FilterColumnName " = '" RowFilterValue "'";
 
               }
 
               Dgv.DataSource dv;
 
           }
 
           else
            
{
 
               dv.RowFilter null;
 
               Dgv.DataSource loadData(SqlString);
 
           }
 
           FillDgvComboBox(DgvSqlStringColNameColInt);
 
       }

 
       public static DataTable loadData(string SqlString)
 
       {
 
           SqlDataAdapter adapter = new SqlDataAdapter(SqlStringcon);
 
           DataTable dt = new DataTable();
 
           dt.Clear();
 
           adapter.Fill(dt);
 
           return dt;
 
       }
 
       // FillComboBox
 
       /// <summary>
 
       /// تعبئة و الكمبو بوكس اللي في الغريد فيو
 
       /// </summary>
 
       /// <param name="Dgv">اسم الداتا غريد فيو على الفورم</param>
 
       /// <param name="SqlString">الاستعلام المستخدم</param>
 
       /// <param name="ColName">اسم العامود الذي تريد تعبئة الكومبو الخاص بالغريد</param>
 
       /// <param name="ColInt">ترتيب العامود بالداتا غريد فيو</param>
 
       public static void FillDgvComboBox(DataGridView Dgvstring SqlStringstring ColNameint ColInt)
 
       {
 
           DataTable dt = new DataTable();
 
           dt loadData(SqlString);
 
           // ADD COLUMNS 
 
           DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
 
           combo.HeaderText ColName;// "Office"
 
           combo.Name "combo";
 
           combo.DataPropertyName ColName;// "Office"
 
           ArrayList row = new ArrayList();
 
           // FILL ARRAYLIST FROM DATATABLE
 
           foreach (DataRow dr in dt.Rows)
 
           {
 
               row.Add(dr[ColName].ToString());// "Office"
 
           }
 
           // ADD TO COMBO
 
           combo.Items.AddRange(row.ToArray());
 
           // Remove Old Column
 
           Dgv.Columns.RemoveAt(ColInt);
 
           // ADD THE COMBO TO DATAGRIDVIEW
 
           Dgv.Columns.Insert(ColIntcombo);
 
       }
 
   }



طريقة الاستخدام :

الطريقة الاولى :

لملئ الداتا مع الكومبو بوكس الموجودة بداخله نكتب الكود التالي في حدث اللود الخاص بالفورم هذا الكود به بحث حسب ID بقيمة 1 .


الكود :

PHP كود :
FillDataGridViewAndComboBoxCLS.FillDataGridViewAndComboBox(dataGridView1"SELECT ID,Name,Telphone FROM CONTRACTORS ""ID""1""NAME"1); 

هذا الكود مثل السابق لكن من دون بحث عن سجل بالجدول :

PHP كود :
FillDataGridViewAndComboBoxCLS.FillDataGridViewAndComboBox(dataGridView1"SELECT ID,Name,Telphone FROM CONTRACTORS """"""NAME"1); 

الكود الاخير لملئ كومبو بوكس من جدول آخر أولا نقوم بملئ الداتا غريد فيو بالطريقة التي نريد مع تحديد عامود للكومبو بوكس الذي نريد تعبئته طبعا نحفظ ترتيب العامود ابتداء من الصفر ثم نكتب الكود التالي :

PHP كود :
FillDataGridViewAndComboBoxCLS.FillDgvComboBox(dataGridView2"select Office from Employee""Office"0); 

الكود تقريبا مشروح بالكلاس عن طريق السمري و دمتم بخير .







يوجد بالمرفقات مثال مع سكربت عمل قاعدة البيانات و الجدول المستخدم .


الملفات المرفقة
.zip   FillDataGridViewAndComboBoxXT.zip (الحجم : 351.66 ك ب / التحميلات : 236)
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , sendbad100


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Video [درس فيديو] ( Xamarin , c# , VB ) عمل محرك بحث سريع لجميع حقول الجدول مثل قوقل Google rabia al hamdani 0 1,287 30-06-22, 11:58 PM
آخر رد: rabia al hamdani
  [مشروع] التلاعب بالاسم [يوجد كود منع تكرار تشغيل البرنامج ضمن كلاس Program.cs] سعود 0 1,994 13-05-20, 12:58 AM
آخر رد: سعود
  كلاس التشفير المخصص سعود 0 1,531 07-05-20, 02:46 PM
آخر رد: سعود

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


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