سؤال

لدي مستخدم يريد أن يكون قادرًا على تحديد مربع نص وتحديد النص الحالي حتى لا يضطر إلى تمييزه بالكامل لتغيير المحتويات.

يجب التعامل مع المحتويات عند الضغط على زر الإدخال.أعتقد أن هذا الجزء قد فهمته ولكن أي اقتراحات ستكون موضع ترحيب.

الجزء الذي أحتاج إلى المساعدة فيه هو أنه بمجرد الضغط على زر الإدخال، فإن أي إدخال في مربع النص يجب أن يمسح المحتويات مرة أخرى.

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

هل كانت مفيدة؟

المحلول

قم بالربط بحدث KeyPress على TextBox، وعندما يواجه مفتاح Enter، قم بتشغيل رمز إعداد الجهاز الخاص بك، ثم قم بتمييز النص الكامل لمربع النص مرة أخرى (انظر أدناه) - سيهتم Windows بمسح النص بضغطة المفتاح التالية لك.

TextBox1.Select(0, TextBox1.Text.Length);

نصائح أخرى

حسنًا، هل أنت متأكد من أن هذا حكيم؟أتصور هنا سيناريوهين:

  1. يوجد زر افتراضي في النموذج، والذي يتم "النقر عليه" عند الضغط على زر الإدخال.
  2. لا يوجد زر افتراضي، وتريد أن يضغط المستخدم على زر الإدخال، بغض النظر.

وكلاهما يثير نفس الأسئلة:

  • هل هناك أي تحقق يجري على النص؟
  • لماذا لا يتم إنشاء عنصر تحكم المستخدم لتغليف هذا المنطق؟
  • إذا كنت تعلم أنه يتم الضغط على زر الإدخال واستهلاكه بشكل جيد، فكيف تواجه مشكلات؟ TextBoxName.Text = string.Empty ?

أيضًا، كملاحظة مهذبة، هل يمكنك من فضلك محاولة تقسيم سؤالك قليلاً؟كتلة واحدة كبيرة تسبب بعض الألم في القراءة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top