দারিন দিমিত্রভের উত্তরে স্ম্নবিএস মন্তব্য হিসাবে Prompt
ঠিক এই উদ্দেশ্যে উপস্থিত রয়েছে, তাই কাস্টম বৈশিষ্ট্য তৈরি করার দরকার নেই । ডকুমেন্টেশন থেকে:
পাওয়া যায় বা একটি মান সেট করে যা ইউআইতে প্রম্পটের জন্য ওয়াটারমার্ক সেট করতে ব্যবহৃত হবে।
এটি ব্যবহারের জন্য, কেবল আপনার মতামতের মডেলটির সম্পত্তিটি সাজান:
[Display(Prompt = "numbers only")]
public int Age { get; set; }
এই পাঠ্যটি তখন সুবিধার্থে স্থাপন করা হয়েছে ModelMetadata.Watermark
। বাক্সের বাইরে, এমভিসি 3 এ ডিফল্ট টেম্পলেটটি Watermark
সম্পত্তিটিকে উপেক্ষা করে , তবে এটিকে কাজ করা সত্যিই সহজ। এমভিসি কীভাবে এটি রেন্ডার করতে হয় তা বলার জন্য আপনাকে কেবল ডিফল্ট স্ট্রিং টেম্পলেটটি টুইট করতে হবে। ডারিনের মতো স্ট্রিং.সি.এস.টি.এম.এল সম্পাদনা করুন, ওয়াটারমার্কটি প্রাপ্ত করার পরিবর্তে ModelMetadata.AdditionalValues
আপনি এটিকে সরাসরি পান ModelMetadata.Watermark
:
Views / ভিউ / ভাগ করা / সম্পাদকআপনিপ্লেটগুলি / স্ট্রিং.একএসটিএমএল:
@Html.TextBox("", ViewData.TemplateInfo.FormattedModelValue, new { @class = "text-box single-line", placeholder = ViewData.ModelMetadata.Watermark })
এবং এটি হয়।
আপনি দেখতে পাচ্ছেন যে, সমস্ত কিছু কাজ করার মূল চাবিকাঠিটি placeholder = ViewData.ModelMetadata.Watermark
কিছুটা।
আপনি যদি মাল্টি-লাইন পাঠ্যবাক্সগুলির জন্য (টেক্সারিয়াস) ওয়াটারমার্কিং সক্ষম করতে চান তবে আপনি মাল্টিলাইনটেক্সট.সিএসটিএমএল এর জন্যও তাই করুন:
Views / ভিউ / ভাগ করা / সম্পাদকTemplets / MultilineText.cshtml:
@Html.TextArea("", ViewData.TemplateInfo.FormattedModelValue.ToString(), 0, 0, new { @class = "text-box multi-line", placeholder = ViewData.ModelMetadata.Watermark })