كومبو VB.NetBox التحكم بالمثال
⚡ ملخص ذكي
كومبوBox في VB.Net هو Windows عنصر تحكم في النماذج يجمع بين مربع نص وقائمة منسدلة، مما يسمح للمستخدم باختيار عنصر واحد أو كتابة عنصر واحد، مما يوفر مساحة في النموذج.
ما هو Combobox Control؟
يساعدك عنصر التحكم في المربع المنسدل على عرض قائمة منسدلة تحتوي على العديد من العناصر. يمكنك اعتباره مزيجًا من مربع نص يقوم المستخدم بإدخال نص فيه وقائمة منسدلة يختار المستخدم منها عنصرًا. لاحظ أن المربع المنسدل يعرض عنصرًا واحدًا في كل مرة.
إنشاء مربع التحرير والسرد
كومبوBox يمكن إنشاؤها على النحو التالي:
الخطوة 1) إنشاء تطبيق جديد.
الخطوة 2) اسحب عنصر تحكم مربع التحرير والسرد من صندوق الأدوات إلى النموذج.
لقد قمت بإنشاء عنصر تحكم مربع المجموعة.
إضافة عناصر إلى Combobox
الآن بعد أن قمنا بإنشاء صندوق المجموعة، دعنا نوضح لك كيفية إضافة العناصر إليه.
Double انقر فوق عنصر التحكم في المربع المنسدل الذي أضفته. سيتم نقلك من علامة التبويب "التصميم" إلى علامة التبويب التي تحتوي على الكود.
لإضافة عنصر إلى عنصر تحكم مربع المجموعة، نستخدم خاصية العناصر. دعنا نوضح ذلك بإضافة عنصرين إلى مربع المجموعة، ذكر وأنثى:
ComboBox1.Items.Add("Male") ComboBox1.Items.Add("Female")
يمكننا أيضًا اختيار إضافة عناصر إلى المربع المنسدل في وقت التصميم من نافذة "الخصائص". وفيما يلي الخطوات:
الخطوة 1) افتح علامة تبويب التصميم وانقر فوق عنصر تحكم مربع التحرير والسرد.
الخطوة 2) انتقل إلى نافذة الخصائص واعرض خيار العناصر.
الخطوة 3) انقر فوق … الموجودة على يمين (المجموعة).
الخطوة الرابعة) ستظهر لك نافذة جديدة. هنا يمكنك إضافة العناصر إلى القائمة المنسدلة، كما هو موضح أدناه:
الخطوة 5) بمجرد الانتهاء من typing بعد تحديد العناصر، انقر فوق زر "موافق".
الخطوة 6) انقر فوق زر البدء من شريط الأدوات العلوي وانقر فوق رمز القائمة المنسدلة في مربع التحرير والسرد.
تمت إضافة العناصر إلى عنصر التحكم combobox بنجاح.
تحديد عناصر المجموعة المنسدلة
قد تحتاج إلى تعيين العنصر الافتراضي الذي سيتم تحديده عند تحميل النموذج. يمكنك تحقيق ذلك عبر طريقة SelectedItem(). على سبيل المثال، لتعيين الجنس الافتراضي المحدد إلى ذكر، يمكنك استخدام العبارة التالية:
ComboBox1.SelectedItem = "Male"
عند تشغيل الكود، يجب أن يكون عنصر التحكم في المربع المنسدل كما هو موضح أدناه:
استرجاع قيم المجموعة المنسدلة
يمكنك الحصول على العنصر المحدد من قائمة الاختيار. يتم ذلك باستخدام خاصية النص. لنوضح ذلك باستخدام قائمة الاختيار أعلاه التي تحتوي على عنصرين، وهما: ذكر وأنثى. اتبع الخطوات الموضحة أدناه:
الخطوة 1) Double انقر على مربع التحرير والسرد لفتح علامة التبويب التي تحتوي على كود VB.Net.
الخطوة الثانية) أضف الكود التالي:
Public Class Form1 Private Sub ComboBox1_SelectedIndexChanged(sd As Object, evnt As EventArgs) Handles ComboBox1.SelectedIndexChanged Dim var_gender As String var_gender = ComboBox1.Text MessageBox.Show(var_gender) End Sub End Class
الخطوة 3) انقر على زر "ابدأ" من شريط الأدوات لتنفيذ الكود. ستظهر لك النافذة التالية:
الخطوة الرابعة) انقر على زر القائمة المنسدلة واختر جنسك. في حالتي، اخترت ذكر، وحصلت على ما يلي:
فيما يلي لقطة شاشة للكود:
شرح Code:
- إنشاء فئة تسمى Form1. سيكون الفصل متاحًا للعامة نظرًا لأنه تم ضبط معدّل الوصول الخاص به على "عام".
- بدء إجراء فرعي باسم ComboBox1_SelectedIndexChanged. يتم إنشاء هذا الحدث تلقائيًا عند النقر المزدوج على عنصر تحكم مربع التحرير والسرد من علامة تبويب التصميم. سيتم استدعاء هذا الإجراء الفرعي عند تحديد عنصر من مربع التحرير والسرد. يشير sd As Object إلى الكائن الذي أطلق الحدث، بينما يحتوي event As EventArgs على بيانات الحدث.
- إنشاء متغير نصي باسم var_gender.
- تعيين قيمة المتغير var_gender إلى العنصر المحدد في المجموعة المنسدلة.
- طباعة قيمة المتغير var_gender على رسالةBox.
- نهاية الكومبوBox1_SelectedIndexChanged الإجراء الفرعي.
- نهاية فئة Form1.
إزالة عناصر Combobox
من الممكن أن تقوم بإزالة عنصر من مربع التحرير والسرد الخاص بك. هناك طريقتان يمكنك من خلالهما إنجاز ذلك. يمكنك استخدام فهرس العنصر أو اسم العنصر.
عند استخدام فهرس العناصر، يجب عليك استخدام الخاصية Items.RemoveAt() كما هو موضح أدناه:
ComboBox1.Items.RemoveAt(1)
في المثال أعلاه، نقوم بإزالة العنصر الموجود عند الفهرس 1 من مربع التحرير والسرد. لاحظ أن فهرس مربع التحرير والسرد يبدأ عند الفهرس 0، مما يعني أن الأمر أعلاه سيزيل العنصر الثاني من مربع التحرير والسرد.
لإزالة العنصر باستخدام اسمه، يجب عليك استخدام خاصية Items.Remove() كما هو موضح أدناه:
ComboBox1.Items.Remove("Female")
يجب أن يزيل الكود أعلاه العنصر المسمى Female من التحرير والسردBox1.
ربط مصدر البيانات
كومبوBox يمكن ملؤها من مجموعة البيانات. خذ بعين الاعتبار استعلام SQL الوارد أدناه:
select emp_id, emp_name from employees;
يمكنك إنشاء مصدر بيانات في برنامج ثم استخدام الكود التالي لربطه:
comboBox1.DataSource = ds.Tables(0) comboBox1.ValueMember = "emp_id" comboBox1.DisplayMember = "emp_name"
سيوفر لك هذا طريقة سهلة لملء عنصر التحكم في المربع المنسدل بالبيانات دون الحاجة إلى كتابة كل عنصر على حدة.
حدث SelectedIndexChanged
غالباً ما سترغب في أن يتفاعل برنامجك في اللحظة التي يختار فيها المستخدم قيمة جديدة.
يتم استدعاء هذا النوع من الأحداث عند تغيير العنصر المحدد في مربع التحرير والسرد الخاص بك. وهو الحدث الذي يجب عليك استخدامه عندما تحتاج إلى تنفيذ إجراء عند إجراء تغيير على العنصر المحدد في مربع التحرير والسرد. دعنا نوضح ذلك باستخدام مثال:
الخطوة 1) إنشاء جديد Windows تطبيق النماذج.
الخطوة 2) بعد ذلك، تحتاج إلى سحب وإفلات عنصرين من عناصر التحكم في مربع التحرير والسرد في النموذج.
الخطوة 3) Double انقر داخل النموذج لفتح علامة التبويب الخاصة بالكود. أدخل الكود التالي:
Public Class Form1 Private Sub Form1_Load(sd As Object, evnt As EventArgs) Handles MyBase.Load ComboBox1.Items.Add("Males") ComboBox1.Items.Add("Females") End Sub Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged ComboBox2.Items.Clear() If ComboBox1.SelectedItem = "Males" Then ComboBox2.Items.Add("Nicholas") ComboBox2.Items.Add("John") ElseIf ComboBox1.SelectedItem = "Females" Then ComboBox2.Items.Add("Alice") ComboBox2.Items.Add("Grace") End If End Sub End Class
الخطوة الرابعة) انقر على زر "ابدأ" من الشريط العلوي لتشغيل الكود. يجب أن تحصل على المخرجات التالية:
الخطوة 5) انقر على زر القائمة المنسدلة في مربع التحرير والسرد الأول واختر "ذكر". حرك مؤشر الماوس إلى مربع التحرير والسرد الثاني وانقر على زر القائمة المنسدلة فيه. ستظهر لك العناصر المتاحة.
الخطوة 6) انتقل إلى مربع التحرير والسرد الأول واختر أنثىانتقل إلى القائمة المنسدلة الثانية واطلع على العناصر المتاحة:
فيما يلي لقطة شاشة للكود:
شرح Code:
- إنشاء فئة تسمى Form1.
- بداية إجراء فرعي باسم Form1_Load(). سيتم تشغيل هذا الإجراء بمجرد تحميل النموذج. يشير sd As Object إلى الكائن الذي أطلق الحدث، بينما يحتوي event As EventArgs على بيانات الحدث.
- إضافة العنصر الذكور إلى التحرير والسردBox1.
- إضافة العنصر الإناث إلى التحرير والسردBox1.
- نهاية الإجراء الفرعي Form1_Load().
- بدء إجراء فرعي يسمى ComboBox1_SelectedIndexChanged(). سيتم استدعاء هذا عند تحديد عنصر في المربع المنسدل الأول. يشير المرسل As Object إلى الكائن الذي أثار الحدث بينما يحتوي e As EventArgs على بيانات الحدث.
- اصنع كومبوBox2 فارغة، مسح كافة العناصر منه.
- خلق شرط. التحقق مما إذا كان العنصر المحدد موجودًا في ComboBox1 هو ذكور.
- أضف العنصر نيكولاس إلى التحرير والسردBox2 عندما يكون الشرط أعلاه صحيحًا، أي يتم تحديد العنصر في ComboBox1 ذكر.
- أضف العنصر جون إلى التحرير والسردBox2 عندما يكون الشرط أعلاه صحيحًا، أي يتم تحديد العنصر في ComboBox1 هو ذكور.
- خلق شرط. التحقق مما إذا كان العنصر المحدد موجودًا في ComboBox1 إناث.
- أضف العنصر Alice إلى التحرير والسردBox2 عندما يكون الشرط أعلاه صحيحًا، أي يتم تحديد العنصر في ComboBox1 إناث.
- أضف العنصر Grace إلى التحرير والسردBox2 عندما يكون الشرط أعلاه صحيحًا، أي يتم تحديد العنصر في ComboBox1 إناث.
- نهاية كتلة If.
- نهاية الكومبوBox1_SelectedIndexChanged() الإجراء الفرعي.
- نهاية الفصل الدراسي 1.













