UWP桌面应用:如何验证文本框输入值并阻止焦点切换?
UWP文本框Double类型验证及焦点保留实现
我正在开发一款UWP桌面应用,需要验证文本框中输入的值必须为double类型,若不符合要求则焦点需保留在当前控件。
最初尝试的代码如下:
private async void tbxValue_LosingFocus(UIElement sender, LosingFocusEventArgs args) { try { double dbl = Convert.ToDouble(tbxValue.Text); } catch (Exception ex) { args.Cancel = true; MessageDialog msgDlg = new MessageDialog(resourceLoader.GetString("MsgDlgValueError")); await msgDlg.ShowAsync(); } }
编辑补充
感谢Flydog57的评论,我找到了解决方案:
private async void myTextBox_LosingFocus(UIElement sender, LosingFocusEventArgs args) { if(!double.TryParse(((TextBox)sender).Text, out double dbl)) { bool bolCancel = args.TryCancel(); if(bolCancel) { MessageDialog msgDlg = new MessageDialog(resourceLoader.GetString("MsgDlgValueError")); await msgDlg.ShowAsync(); } } }
内容的提问来源于stack exchange,提问作者Jose Afonso Braga
相关产品推荐
相关产品推荐

