ASP.NET Textbox Control - احصل على قيمة النص الافتراضي في الكود خلفها؟

StackOverflow https://stackoverflow.com/questions/545596

  •  23-08-2019
  •  | 
  •  

سؤال

لقد تم تجسس MSDN ولا يمكنني رؤية خاصية / طريقة لصندوق TextBox الذي يسمح لك بالحصول على قيمة النص الافتراضية التي تم تعيينها في حقل؛ أريد أن أكون قادرا على مقارنة TXTMYTextBox.Text الحالي إلى القيمة الافتراضية (مثل برامج رمز PSuDo هذه):

var myValue = (String.Compare(txtMyTextBox.Text, txtMyTextBox.DefaultText) ? "" : txtMyTextBox.Text)

هل هذا شيء موجود في عنصر تحكم ASP.NET؟ أو هل سأطلب الكثير؟ :)

شكرا لأي مساعدة (كما هو الحال دائما)!

بيت

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

المحلول

لا يوجد في طريقة لاسترداد القيمة الافتراضية لصندوق TextBox أثناء النشر.

سيكون أحد الخيارات هو استخدام ViewState لتخزين القيمة أثناء المساءات الأولية واسترجاعها من هناك أثناء عونك لإجراء المقارنة.

نصائح أخرى

بواسطة DefaultText هل تقصد النص الأولي قبل التحرير؟

ربما أعلن هذا في حقل / حقل / إلخ في مكان ما، ووضعه برمجيا وليس في العلامة - أي في الحمل الأول، txtMyTextBox.Text = defaultText; - ثم في وقت لاحق يمكنك فقط مقارنة مرة أخرى defaultText لتتبع التغييرات.

لا يوجد خاصية "DefaultText" على مربع نص (أو أي عنصر تحكم آخر). ربما حددت الافتراضي من خلال سلسلة ثابتة، لذلك فقط قارن خاصية النص إلى تلك السلسلة الثابتة.

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

ضع القيمة الأصلية في حقل مخفي أو في ViewState.

تدعم فئة TextBox خاصية مؤقتا فقط، لذلك يجب تخزين قيمة "الافتراضية" الخاصة بك في مكان ما قبل تقديم الصفحة لأول مرة حتى تتمكن من التحقق من خاصية ملفات TextBox .TEST عند إرسال الصفحة. يمكن تخزين هذه القيمة "الافتراضية" في ملف تعريف ارتباط (إذا كانت صغيرة بما فيه الكفاية)، في عرض الصفحة، في حقل نموذج مخفي على الصفحة، أو حتى في حالة الطلب أو جلسة الجلسة.

لا يحتوي TextBox على خاصية DefaultText، لذلك أنا مرتبك. كيف يمكنك إعداد قيمة نصية افتراضية؟ إذا كنت تعطيه فقط في الكود IE

<asp:TextBox ...>Default Value</asp:TextBox>

ثم ستكون قيمة الخاصية .Text.

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