PDA

View Full Version : سوال: در maskedtextbox اول روز بعد ماه بعد سال وارد شود



forodo
دوشنبه 29 مهر 1392, 11:19 صبح
سلام
چطور می تونم کاری کنم تا داخل maskedtextbox اول روز وارد شود بعد ماه وارد شود و بعد سال را وارد کرد؟
الان هرکاری می کنم باید اول سال رو وارد کنم.

behnam-soft
دوشنبه 29 مهر 1392, 18:25 عصر
خب شما به جای نوشتن مثلا این کد 9999/99/99 این کد رو بنویس ! 99/99/9999

vahid_dadaism
دوشنبه 29 مهر 1392, 18:41 عصر
از این عبارت برای mask خود استفاده کن:
0000/00/00 یا ##/##/####
00/00/0000 یا ####/##/##
.....................

forodo
دوشنبه 29 مهر 1392, 19:10 عصر
می خوام وقتی که اول روز رو وارد کردم بعد ماه رو و بعد سال رو در انتها سال سمت چپ باشه.
ولی هرکاری می کنم سال سمت راسته.
مشکل من اینه که می خوام اولین چیزی که وارد می کنم روز باشه ولی ظاهرش این طوری باشه.
0000/00/00
حتی اگر اینطوری هم باشه مشکلی نیست. ولی سال سمت چپ باشه.
00/00/00

vahid_dadaism
سه شنبه 30 مهر 1392, 14:52 عصر
ببخشید، یعنی منظورتون اینه که ماسک وجود داره فقط سرجای خوشون نیست؟
خوب اگه اینطور باشه اول یه نگاه به culture فرمت بنداز...ببین چیه؟ شاید culture ماسک رو به فرمتی که میگی تغییر میده.
بعدش یه نگاهی به لینک زیر بنداز:
http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/MaskedEdit/MaskedEdit.aspx
بعدشم اگه مشکلت حل نشده بگو تا ببینیم دیگه چه میشه کرد
مرسی

forodo
سه شنبه 30 مهر 1392, 16:02 عصر
ممنون.
گذاشتم روی fa-IR ولی اون چیزی که می خواستم نشد.
میخوام اول روز وارد شه بعد ماه بعد سال. در انتها که اینا وارد شد سال سمت چپ باشه.
بعنی اول روز مثلاً 30
دوم ماه مثلاً 07
سوم سال مثلاً 1392
در انتها من اینو داشته باشم.
1392/07/30

saied_max
سه شنبه 30 مهر 1392, 17:43 عصر
یه راه حل مزخرف :
از سه تا textBox یا maskTextbox استفاده کن و بین آن ها از Label استفاده کن یعنی اگه از maskText استفاده کنی از چپ به راست mask آنها میشه 99 , 99 , 1399

forodo
سه شنبه 30 مهر 1392, 18:22 عصر
یه راه حل مزخرف :
از سه تا textBox یا maskTextbox استفاده کن و بین آن ها از Label استفاده کن یعنی اگه از maskText استفاده کنی از چپ به راست mask آنها میشه 99 , 99 , 1399
اینجوری ظاهر برنامه ناجور می شه.
بعد که می خوای از بانک بخونیش و تو کنترلهای خودش نشون بدی داستان داره.

saied_max
سه شنبه 30 مهر 1392, 18:48 عصر
از این روش میتونی استفاده کنی

private void maskedTextBox1_MouseClick(object sender, MouseEventArgs e)
{
maskedTextBox1.SelectionStart = 8;
}

فقط چیزی که میمونه اینه که هر دفعه که کارکتری فشرده میشه(اعداد) masktextbox.text را چک کنی ببینی کجاهاش پر شده بعد نقطه جدید را بدی تا کامل پر بشه( یعنی اینی که من نوشتم اول روز رو میگیره بعد اینکه روز پر شد selectionstart =6 و ...

saied_max
سه شنبه 30 مهر 1392, 19:01 عصر
اگه متوجه نشدی بگو تا کد رو بنویسم ؟

forodo
چهارشنبه 01 آبان 1392, 09:40 صبح
اگر کد رو بنویسید ممنون میشم.
فقط توی رویدادی باشه که کنترل انتخاب شد کدها اتفاق بیافته.
بعنی چه با کلیک یا با تب روی کنترل رفت یا هرچیزه دیگه ای که احتمال میره.

forodo
جمعه 03 آبان 1392, 19:23 عصر
از این روش میتونی استفاده کنی

private void maskedTextBox1_MouseClick(object sender, MouseEventArgs e)
{
maskedTextBox1.SelectionStart = 8;
}

فقط چیزی که میمونه اینه که هر دفعه که کارکتری فشرده میشه(اعداد) masktextbox.text را چک کنی ببینی کجاهاش پر شده بعد نقطه جدید را بدی تا کامل پر بشه( یعنی اینی که من نوشتم اول روز رو میگیره بعد اینکه روز پر شد selectionstart =6 و ...
این کد رو نوشتم ولی هرجا که کلید می کنم همونجا نشانگر موس قرار می گیرد و به کاراکتر 8ام نمی روم.
لطفاً کدش را قرار دهید ممنون می شود.

forodo
شنبه 04 آبان 1392, 21:55 عصر
حتی اعداد رو هم تغییر دادم ولی نشد.
اصلاً هر عددی می ذارم انگار نه انگار.
بالاخره میشه به اون هدفی که می خوام برسم یا نه؟؟؟

hamid59022
سه شنبه 28 آبان 1392, 14:59 عصر
به نظرم اگر در كنترل right to left را true كني درست شود

forodo
سه شنبه 28 آبان 1392, 15:08 عصر
به نظرم اگر در كنترل right to left را true كني درست شود
تمام این کارا رو کردم ولی نشد.
هم فرم و خود کنترل رو هر حالتی که گذاشتم نشد که نشد.

momimomi
شنبه 21 دی 1392, 19:35 عصر
تمام این کارا رو کردم ولی نشد.
هم فرم و خود کنترل رو هر حالتی که گذاشتم نشد که نشد.

بسم الله الرحمن الرحیم
از این کامپوننت استفاده کن خودتو راحت کن

115219

momimomi
یک شنبه 22 دی 1392, 00:14 صبح
این یکی بهتره

115234