برنامج تعليمي لعناصر التحكم في VB.Net TEXTBOX: الخصائص مع المثال

⚡ ملخص ذكي

نصBox تقبل عناصر التحكم في VB.Net إدخال المستخدم على Windows قم بتشكيل وعرض خصائص مثل Multiline و PasswordChar و MaxLength و ReadOnly لتشكيل كيفية إدخال النص أو إخفائه أو تقييده أو قفله في وقت التشغيل.

  • 🧩 الغرض الأساسي: النصBox تتيح وحدة التحكم إمكانية إدخال المستخدم في سطر واحد أو عدة أسطر على Windows يتم إنشاء النموذج أثناء وقت التشغيل.
  • 🔤 الخصائص الرئيسية: تتيح لك وظائف TextAlign وScrollBars وMultiline وMaxLength وReadonly وPasswordChar تخصيص سلوك عناصر التحكم.
  • 🔐 إخفاء كلمة المرور: يؤدي تعيين قيمة PasswordChar إلى * إلى إخفاء الأحرف أثناء كتابة المستخدم، مما يحافظ علىping معلومات حساسة خاصة.
  • 📄 خطوط متعددة: قم بتفعيل خاصية Multiline، ثم استخدم ControlChars.NewLine لتقسيم النص عبر صفوف منفصلة.
  • 🔢 القيم العددية: قم بتحويل السلسلة باستخدام Integer.Parse قبل معالجة أي نصBox أدخل كرقم.
  • 🤖 مساعدة الذكاء الاصطناعي: GitHub Copilot و Visual Studio 2026 IntelliCode يمكنه إنشاء معالجات الأحداث والتحقق من صحة المدخلات المكتوبة.

نص VB.NetBox خصائص التحكم وأمثلة عليها

ما هو النصBox مراقبة؟

النصBox يتيح لك التحكم إدخال نص في النموذج الخاص بك أثناء وقت التشغيل. الإعداد الافتراضي هو أنه سيقبل سطرًا واحدًا فقط من النص، ولكن يمكنك تعديله لقبول أسطر متعددة. يمكنك أيضًا تضمين أشرطة التمرير في النص الخاص بكBox مراقبة.

نصBox عقارات

فيما يلي الخصائص الأكثر شيوعًا لـ Visual Basic TextBox مراقبة:

  • محاذاة النص- لضبط محاذاة النص
  • أشرطة_التمرير- لإضافة أشرطة التمرير، سواء الرأسية أو الأفقية
  • متعدد الأسطر- لتعيين النصBox التحكم للسماح بخطوط متعددة
  • الحد الاقصى للطول– لتحديد الحد الأقصى لعدد الأحرف النصBox سوف تقبل السيطرة
  • فهرس- لتحديد فهرس مجموعة التحكم
  • يمكن لمستخدمي تطبيق Smart Spaces مع Google Wallet الاستفادة من دخول محمول دون لمس مع أي قارئ HID® Signo™ مُمكَّن بتقنية NFC.- لتمكين التحكم في مربع النص
  • يقرأ فقط- إذا تم التعيين على "صحيح"، فستتمكن من استخدام النصBox إذا تم ضبط خيار التحكم على "خطأ"، فلن تتمكن من استخدام النصBox مراقبة.
  • الاختيار- لتحديد أو الحصول على نقطة البداية للنصBox مراقبة.
  • الطول– لتحديد أو الحصول على عدد الأحرف التي تم تحديدها في النصBox مراقبة.
  • النص المحدد- إرجاع النصBox عنصر التحكم المحدد حاليًا.

نصBox الفعاليات

الغرض من الأحداث هو جعل النصBox التحكم في الاستجابة لإجراءات المستخدم مثل النقر أو النقر المزدوج أو تغيير محاذاة النص. فيما يلي الأحداث الشائعة للنصBox مراقبة:

  • تغيير الحجم التلقائي- يتم تشغيله بواسطة تغيير في خاصية AutoSize.
  • قراءة فقط تغيرت- يتم تشغيله بسبب تغيير قيمة خاصية القراءة فقط.
  • انقر- يتم تشغيله عن طريق النقر على النصBox مراقبة.

كيفية إنشاء نصBox

اتبع هذه الخطوات لإضافة نصك الأولBox التحكم في Windows قم بإنشاء وعرض رسالة ترحيبية أثناء التشغيل.

الخطوة 1) لإنشاء نصBox، اسحب النصBox التحكم من صندوق الأدوات إلى Windows النموذج:

نصBox تمت إضافة عنصر تحكم إلى Windows سطح تصميم الشكل

الخطوة 2)

  1. انقر فوق النصBox التحكم الذي قمت بإضافته إلى النموذج.
  2. انتقل إلى قسم الخصائص الموجود في أسفل يسار الشاشة. قم بتغيير اسم مربع النص من نصBox1 إلى HelloTextBox:

إعادة تسمية النصBox إلى HelloTextBox في نافذة الخصائص

الخطوة 3) أضف الكود التالي لإضافة نص إلى عنصر التحكم:

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        'Add text to the control
         HelloTextBox.Text = "Hello. Welcome to Guru99!"
  End Sub

الخطوة الرابعة) يمكنك الآن تشغيل الكود بالنقر فوق زر "ابدأ" الموجود في الشريط العلوي:

زر البدء الموجود على شريط أدوات Visual Studio يُستخدم لتشغيل المشروع

الخطوة 5) يجب أن تحصل على النموذج التالي:

يتم تشغيل النموذج الذي يعرض "مرحباً. أهلاً بك في" Guru99! في النصBox

فيما يلي لقطة شاشة للكود الكامل لما ورد أعلاه:

أكمل كود Form1_Load الذي يقوم بتعيين HelloTextBox نص

شرح الكود:

  1. إنشاء فئة عامة باسم Form1.
  2. إنشاء إجراء فرعي يسمى Form1_Load. سيتم استدعاؤه عند تحميل النموذج.
  3. ملاحظة: سيتجاهل مُصرّف VB.Net هذا الجزء.
  4. قم بإنهاء الإجراء الفرعي.
  5. إنهاء الفصل.

خاصية PasswordChar

أحيانًا، تريد استخدام مربع نص لـping كلمة مرور. هذا يعني أن أي شيء يُكتب في مربع النص هذا يجب أن يبقى سريًا. وهذا ممكن باستخدام VB.Net. ويمكن القيام بذلك باستخدام PasswordChar الخاصية التي تسمح لنا باستخدام أي شخصية تريدها. دعونا نوضح ذلك باستخدام مثال:

ابدأ بإنشاء مشروع جديد. اسحب نصينBox عناصر التحكم، وعلامتين، وزر واحد في النموذج. غيّر النصوص الموجودة على العلامتين والزر إلى ما يلي:

تصميم نموذج تسجيل الدخول مع تسميات اسم المستخدم وكلمة المرور والنصBox عناصر التحكم، وزر تسجيل الدخول

انقر فوق مربع النص بجوار تسمية اسم المستخدم، وانتقل إلى قسم الخصائص الموجود في أسفل يسار النافذة. أعطه الاسم UsernameField.

ضبط خاصية الاسم لنص اسم المستخدمBox إلى حقل اسم المستخدم

افعل نفس الشيء بالنسبة للنصBox التحكم بجوار تسمية كلمة المرور، مع إعطائها اسم حقل كلمة المرور.

ضبط خاصية الاسم لنص كلمة المرورBox إلى حقل كلمة المرور

يجب عليك الآن إنشاء نص حقل كلمة المرورBox قم بإظهار علامة * لكل حرف يتم كتابته فيه، أضف الكود التالي:

Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChanged
       PasswordField.PasswordChar = "*"
End Sub

الآن، قم بتشغيل التعليمات البرمجية بالنقر فوق الزر "ابدأ". سوف ينبثق النموذج.

اكتب اسم المستخدم وكلمة المرور ولاحظ ما يحدث. يجب أن ترى ما يلي:

نموذج تسجيل الدخول يعمل مع إخفاء حقل كلمة المرور بواسطة علامات النجمة

يظهر اسم المستخدم، ولكن تم إخفاء كلمة المرور. إليك الكود لما سبق:

كود معالج حدث PasswordChar الكامل في VB.Net لحدث PasswordField_TextChanged

شرح الكود:

  1. إنشاء فئة تسمى Form1.
  2. إنشاء إجراء فرعي باسم PasswordField_TextChanged(). سيتم استدعاؤه عند تحميل النموذج.
  3. استخدام خاصية PasswordChar لإظهار * عندما يقوم المستخدم بكتابة كلمة المرور.
  4. إنهاء الإجراء الفرعي.
  5. إنهاء الفصل.

السطر الجديد في النصBox

بشكل افتراضي، يمكنك إنشاء سطر واحد فقط من النص في مربع النص. هناك طريقتان يمكننا من خلالهما تحقيق ذلك. دعنا نناقشهما.

قم بسحب وإسقاط النصBox أضف عنصر تحكم إلى نموذجك. أعطِ عنصر التحكم الاسم المطلوب. Guruأهلا بك.

نصBox إعادة تسمية ل Guruتظهر عبارة "مرحباً" على سطح تصميم النموذج

انقر فوق عنصر التحكم في مربع النص مرة أخرى وحرك مؤشر الماوس إلى قسم "الخصائص". قم بتغيير قيمة خاصية "متعدد الأسطر" إلى "صحيح".

تم ضبط خاصية "متعدد الأسطر" على "صحيح" في نافذة الخصائص.

أو يمكنك بدلاً من ذلك ضبط خاصية Multiline على القيمة true في التعليمات البرمجية الخاصة بك كما يلي:

Guruمرحباً. متعدد الأسطر = صحيح

أضف الكود التالي:

 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        GuruWelcome.Multiline = True

        GuruWelcome.Text = "Line 1"

        GuruWelcome.Text = GuruWelcome.Text & ControlChars.NewLine & "Line 2"

    End Sub

عند التنفيذ، سيتم فصل سطرين من النص.

نموذج التشغيل الذي يوضح السطر 1 والسطر 2 مفصولين بسطر جديد

شرح Code:

  1. إنشاء فئة تسمى Form1.
  2. إنشاء روتين فرعي باسم Form1_Load().
  3. ضبط خاصية "متعدد الأسطر" على "صحيح". سيتمكن مربع النص من استيعاب أكثر من سطر واحد.
  4. إضافة السطر الأول من النص إلى مربع النص.
  5. إضافة السطر الثاني من النص إلى مربع النص. تساعدنا خاصية ControlChars.NewLine في فصل السطرين.
  6. إنهاء الروتين الفرعي.
  7. إنهاء الفصل.

استرداد القيم الصحيحة

تتعامل لغة VB.Net مع كل شيء كسلسلة نصية. هذا يعني أنك تقرأ عددًا صحيحًا من مربع النص كسلسلة نصية، ثم تحوله إلى عدد صحيح. ويتم ذلك عادةً باستخدام الدالة Integer.Parse().

لإثبات ذلك، قم بإنشاء عنصر تحكم جديد في مربع نص بالإضافة إلى زر. أعط مربع النص اسم age. أعط الزر اسم Button1. يجب أن يكون لديك الواجهة التالية:

نصBox العمر المحدد وزر إظهار العمر الموجود على النموذج

أضف الكود التالي:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim x As Integer
        x = Integer.Parse(age.Text)
        MessageBox.Show(x)

قم بتشغيل الكود وأدخل عمرك في مربع النص. انقر فوق الزر "إظهار العمر". يجب أن ترى ما يلي:

عرض مربع حوار العمر الذي يعرض قيمة العدد الصحيح المدخلة في رسالةBox

يتم إرجاع القيمة التي تدخلها في رسالةBox.

كود كامل لزر النقر 1 يقوم بتحليل نص العمرBox تحويل القيمة إلى عدد صحيح

شرح Code:

  1. إنشاء فئة تسمى Form1.
  2. إنشاء إجراء فرعي يسمى Button1_Click. سيتم استدعاؤه عند النقر على الزر.
  3. تحديد متغير عدد صحيح يسمى x.
  4. تحويل القيمة المقروءة من مربع النص المسمى age إلى عدد صحيح.
  5. عرض القيمة المحولة في الخطوة أعلاه في رسالةBox.
  6. إنهاء الإجراء الفرعي.

نص للقراءة فقطBox

يمكنك جعل مربع نص للقراءة فقط. هذا يعني أن المستخدم لن يتمكن من تعديل القيمة المعروضة داخل مربع النص. للقيام بذلك، اضبط خاصية ReadOnly على True. لتوضيح ذلك، أنشئ مربع نص جديدًا وسمّه guru99. أضف الكود التالي:

Private Sub guru99_TextChanged(sender As Object, e As EventArgs) Handles guru99.TextChanged

        guru99.Text = "welcome to Guru99"

        guru99.ReadOnly = True

    End Sub

ينبغي أن يعيد الكود ما يلي:

نص للقراءة فقطBox تشغيل مع نص ترحيبي Guru99 لا يمكن تعديلها

هذا هو الرمز:

كود معالج حدث guru99_TextChanged الكامل، مع ضبط خاصية ReadOnly على True

شرح Code:

  1. إنشاء فئة تسمى Form1.
  2. إنشاء روتين فرعي اسمه guru99_TextChanged.
  3. إضافة نص إلى مربع النص المسمى guru99.
  4. ضبط خاصية "للقراءة فقط" لمربع النص على "صحيح". هذا يجعل النص الموجود في مربع النص غير قابل للتعديل.
  5. إنهاء الإجراء الفرعي.
  6. إنهاء الفصل.

خاصية الحد الأقصى للطول

يمكن أن تساعدك خاصية MaxLength في تحديد الحد الأقصى لعدد الكلمات أو الأحرف التي يسمح بها مربع النص. لتوضيح ذلك، قم بإنشاء مربع نصBox قم بتعديل الملف وأعطه الاسم الكامل (fullName). أضف الكود التالي:

Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChanged

        fullName.MaxLength = 8

    End Sub

قم بتشغيل الكود وحاول كتابة اسمك الكامل. لن تتمكن من كتابة أكثر من 8 أحرف، مع تضمين المسافة البيضاء:

أقصى طول للنصBox تحديد الإدخال بثمانية أحرف في وقت التشغيل

الرمز:

الكود الكامل لـ fullName_TextChanged الذي يضبط MaxLength على 8

Code التفسير:

  1. إنشاء فئة تسمى Form1.
  2. إنشاء إجراء فرعي يسمى fullName_TextChanged.
  3. جعل مربع النص fullName يقبل الحد الأقصى وهو 8 أحرف فقط.
  4. إنهاء الإجراء الفرعي.
  5. إنهاء الفصل.

الأسئلة الشائعة

A نصBox يخزن نصًا عاديًا بحد أقصى 64 ألف حرف واستهلاك منخفض للموارد، وهو مثالي لإدخال البيانات في النماذج. النص الغنيBox يدعم الخطوط والألوان والصور والطول غير المحدود، لذا فهو يناسب المحررين الذين يحتاجون إلى محتوى منسق أو طويل.

قم بمعالجة حدث ضغط المفتاح وتعيينه e.Handled = True كلما Char.IsDigit و Char.IsControl كلاهما يُرجع القيمة "خطأ". وللتحقق من صحة البيانات قبل لصقها، استخدم حدث التحقق مع Integer.TryParse وعرض الملاحظات من خلال موفر الأخطاء.

نعم. مساعد الطيار جيثب يقرأ رمز النموذج المحيط ويقترح معالجات كاملة لأحداث TextChanged أو KeyPress أو Validating. Revراجع الكود المُنشأ، وأضف عمليات التحقق من القيم الفارغة، وعدّل الأسماء قبل قبوله بحيث يتوافق مع اصطلاحات مشروعك.

Visual Studio 2026 IntelliCode يصنف العضو التالي المحتمل في TextBox يقوم البرنامج، في حالاته، بإكمال تعيينات الخصائص تلقائيًا مثل Multiline أو MaxLength، ويقترح تعديلات على مستوى السطر بأكمله بناءً على أنماط تم تعلمها من آلاف Windows مشاريع النماذج.

القيمة الافتراضية لـ MaxLength هي 32,767 حرفًا، وهي مطابقة لحدود Int16.MaxValue. يمكنك ضبط الخاصية على أي عدد موجب أصغر لتقييد الإدخال، أو ضبطها على 0 للسماح بأقصى عدد يدعمه عنصر التحكم.

فعّل خياري Multiline وWordWrap. يتم تفعيل WordWrap تلقائيًا عند تفعيل Multiline، لذا تنفصل الأسطر الطويلة عند حدود الكلمات بدلًا من التمرير الأفقي. أضف ScrollBars = Vertical إذا كان النص قد يتجاوز المساحة المرئية.

يتم تشغيل حدث TextChanged بعد تغيير خاصية النص لأي سبب، بما في ذلك اللصق أو التحديثات البرمجية. يتم تشغيل حدث KeyPress مرة واحدة لكل مفتاح حرف أثناء typing، قبل أن يصل التغيير إلى المخزن المؤقت، ولهذا السبب يتم استخدامه لحظر الأحرف غير الصالحة.

نص قياسيBox يطبق هذا الخيار خطًا واحدًا ولونًا واحدًا على عنصر التحكم بأكمله. أما بالنسبة للأجزاء الملونة أو الخطوط المختلطة أو الصور المضمنة، فاستبدله بـ النص الغنيBox، مما يعرض SelectionColor و SelectionFont على النطاق المحدد حاليًا.

تلخيص هذه التدوينة بـ: