من از WPF سی شارپ استفاده میکنم
یک تکست باکس عددی دارم میخوام فقط اعدا وارد اون بشه نه چیزه دیگه ای
این کار رو توی ورودی تکست باکس انجام دادم , ولی وقتی کاربر میاد یه چیزی از Clipboard توی تکست باکس Paste میکنه
نرم افزار کرش میکنه
private void MyTextbox2_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = new Regex("[^0-9]+").IsMatch(MyTextbox2.Text);
}
توی ویندوز فرم میشد با TextBoxMask جلوی این کار ها رو گرفت اما توی WPF نمی دونم چجوری عمل میکنه
حالا برای حل این مشکل که : از ورود اطلاعتی که متفاوت با اون چیزی که ما میخوایم باشه جلوگیری کنیم , یا به عبارت دیگه :
نحوه استفاده از TextBoxMask در WPF سی شارپ
سلام
اول از همه این کد رو توی PreviewTextInput تکست باکستون بنویسید:
private void MyTextbox2_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
//عبارت باقاعده
Regex regex = new Regex("[^0-9]");
e.Handled = regex.IsMatch(e.Text);
}
در مرحله بعد قبل از Window_Loaded این کد رو بنویس:
private void Foo(object sender, ExecutedRoutedEventArgs e)
{
e.Handled = true;
}
در آخر هم توی Window_Loaded این کد رو بنویس:
MyTextbox2.CommandBindings.Add(new CommandBinding(ApplicationCommands.Paste, Foo));
این کار باعث پیست نشدن در تکست باکس میشه.
این کد رو هم در PreviewKeyDown تکست باکستون بنویسید تا از دکمه Space جلوگیری کنه که به مشکل برنخوری:
private void MyTextbox2_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Space)
e.Handled = true;
}
تمام.
(بکوبین لایکو)
تاریخ :
1404/01/17
- ساعت :
05:35:00 PM
- بازدید :
77
- پاسخ :
0
|
تاریخ :
1399/11/25
- ساعت :
11:22:00 AM
- بازدید :
3921
- پاسخ :
2
|
تاریخ :
1403/12/02
- ساعت :
12:09:00 AM
- بازدید :
295
- پاسخ :
1
|
تاریخ :
1398/07/08
- ساعت :
12:21:00 AM
- بازدید :
3062
- پاسخ :
2
|
تاریخ :
1403/11/23
- ساعت :
08:24:00 PM
- بازدید :
210
- پاسخ :
2
|
تاریخ :
1399/11/10
- ساعت :
10:01:00 PM
- بازدید :
7197
- پاسخ :
4
|
تاریخ :
1399/04/09
- ساعت :
08:51:00 PM
- بازدید :
3108
- پاسخ :
1
|
تاریخ :
1399/03/25
- ساعت :
08:58:00 PM
- بازدید :
3851
- پاسخ :
1
|
تاریخ :
1398/10/03
- ساعت :
10:47:00 PM
- بازدید :
5345
- پاسخ :
8
|
تاریخ :
1400/12/18
- ساعت :
10:24:00 AM
- بازدید :
2127
- پاسخ :
1
|
تاریخ :
1404/01/16
- ساعت :
07:20:00 PM
- بازدید :
119
- پاسخ :
1
|
تاریخ :
1404/01/17
- ساعت :
05:35:00 PM
- بازدید :
77
- پاسخ :
0
|
تاریخ :
1404/01/07
- ساعت :
05:02:00 AM
- بازدید :
116
- پاسخ :
1
|
تاریخ :
1402/04/28
- ساعت :
09:04:00 PM
- بازدید :
1329
- پاسخ :
0
|
تاریخ :
1403/12/30
- ساعت :
06:43:00 PM
- بازدید :
84
- پاسخ :
1
|
تاریخ :
1398/08/23
- ساعت :
09:16:00 PM
- بازدید :
9879
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
12:18:00 PM
- بازدید :
48
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
10:39:00 AM
- بازدید :
52
- پاسخ :
1
|
تاریخ :
1404/01/02
- ساعت :
05:05:00 PM
- بازدید :
69
- پاسخ :
1
|
تاریخ :
1403/12/30
- ساعت :
06:52:00 PM
- بازدید :
64
- پاسخ :
1
|