PDA

View Full Version : مشکل عجیب در maskedTextBox



csharpprogramer88
چهارشنبه 27 مهر 1390, 21:06 عصر
سلام

من یک maskedTextBox بر روی فرم گذاشتم و از properties بر روی خاصیت mask آن کلیک کردم و در آن 0000/00/00 را برای وارد کردن تاریخ وارد کردم که درستم کار میکنه

حالا میخوام ، برای راحتی کاربر ، کاربر دیکه 139 را وارد نکنه به همین دلیل خاصیت mask را بصورت 1390/00/00 تغییر دادم ولی در خروجی فقط 13 نشان میدهد و 9 را نشان نمیدهد حالا که اگر در mask اگر 1380/00/00 را وارد کنم خروجی 138 نشان داده میشود در هر دو صورت کارکتری که وارد کردم قابل تغییر نیست مثلا 13 را نمیشود تغییر داد

لطفا بگویید چطور میتوانم برای کاربر 139 را نشان دهم و این مقدار را اگر کاربر خواست بتواند تغییر دهد ؟

h-rafiee
چهارشنبه 27 مهر 1390, 22:06 عصر
من دگ چک نکردم اما یه سر به این لینک بزنی بد نیست

لینک (http://www.dreamincode.net/forums/topic/202194-maskedtextbox-tutorial-101-common-uses/)

nilmil_nil
پنج شنبه 28 مهر 1390, 09:50 صبح
سلام
من چک کردم بله مثل اینکه با 9 مشکل داره
دوست عزیز شما باید این کد رو توی فرم لود یا هر جایی که نیاز هست بذار
maskedTextBox1.Text = "139";

Arash_janusV3
پنج شنبه 28 مهر 1390, 10:20 صبح
سلام









من یک maskedTextBox بر روی فرم گذاشتم و از properties بر روی خاصیت mask آن کلیک کردم و در آن 0000/00/00 را برای وارد کردن تاریخ وارد کردم که درستم کار میکنه









حالا میخوام ، برای راحتی کاربر ، کاربر دیکه 139 را وارد نکنه به همین دلیل خاصیت mask را بصورت 1390/00/00 تغییر دادم ولی در خروجی فقط 13 نشان میدهد و 9 را نشان نمیدهد حالا که اگر در mask اگر 1380/00/00 را وارد کنم خروجی 138 نشان داده میشود در هر دو صورت کارکتری که وارد کردم قابل تغییر نیست مثلا 13 را نمیشود تغییر داد









لطفا بگویید چطور میتوانم برای کاربر 139 را نشان دهم و این مقدار را اگر کاربر خواست بتواند تغییر دهد ؟








strMask.Replace("9","\\9 (file://0.0.0.9/)").Replace("0","\\0 (file://\\0)");

csharpprogramer88
پنج شنبه 28 مهر 1390, 10:27 صبح
اینطوری که فهمدیم با تغییر تنظیمات ویندوز تنظیمات تاریخ بهم میخوره دسته ؟

اگر اینطور باشه که خیلی بده راه حلش چیه ؟ که با تغییر تنظیمات برنامه ما کار خودش را انجام بده ؟

nilmil_nil
پنج شنبه 28 مهر 1390, 10:33 صبح
به نظر من خودت یک mask TextBox طراحی کن
امکاناتش رو هم بیشتر کن
کار ساده ایه

haniyehghassami
جمعه 29 مهر 1390, 11:48 صبح
منم با nilmil_nil موافقم دوست عزیز

csharpprogramer88
جمعه 29 مهر 1390, 12:39 عصر
به نظر من خودت یک mask TextBox طراحی کن
امکاناتش رو هم بیشتر کن
کار ساده ایه
یعنی چطوری؟ یک دی ال ال بسازم؟

ploto_m
شنبه 30 مهر 1390, 00:22 صبح
سلام

من یک maskedTextBox بر روی فرم گذاشتم و از properties بر روی خاصیت mask آن کلیک کردم و در آن 0000/00/00 را برای وارد کردن تاریخ وارد کردم که درستم کار میکنه

حالا میخوام ، برای راحتی کاربر ، کاربر دیکه 139 را وارد نکنه به همین دلیل خاصیت mask را بصورت 1390/00/00 تغییر دادم ولی در خروجی فقط 13 نشان میدهد و 9 را نشان نمیدهد حالا که اگر در mask اگر 1380/00/00 را وارد کنم خروجی 138 نشان داده میشود در هر دو صورت کارکتری که وارد کردم قابل تغییر نیست مثلا 13 را نمیشود تغییر داد

لطفا بگویید چطور میتوانم برای کاربر 139 را نشان دهم و این مقدار را اگر کاربر خواست بتواند تغییر دهد ؟




اگه دقت کرده باشید برای mask چندتا علامت قرار دارن که هر کدوم در یه جایی استفاده میشه مثلا موقعی که شما 0 میزارید به این معنیه که کاربر حتما باید به جای اون صفر عدد وارد کنه یعنی به صورت اجباری یه عدد وارد بشه اما عدد 9 به معنای یه عدد اختیاریه یعنی هم می تونه وارد بشه هم نه
و چون 9 یکی از علامت های خود mask هست پس موقعی که استفاده کنید چیزی به جاش نشون نمیده .
شما می تونی تو text عدد 139 رو بنویسی.