C# Textbox正则表达式验证在uwp中不起作用
这是UWP的C# Textbox正则表达式验证在uwp中不起作用,c#,regex,uwp,C#,Regex,Uwp,这是UWP的Windows社区工具包的官方文档中提供的仅针对数字的自定义正则表达式验证示例 它可以工作,但是如果我更改正则表达式并使用自定义正则表达式进行NotNullOrEmpty验证,那么它就不能工作。meanext:TextBoxRegex.IsValid始终返回false。为什么?我测试了您在WindowsCommunityToolkit示例应用程序中提供的正则表达式: 它工作正常,即在输入文本后,将结果显示为True 请注意,正则表达式本身不包含第一个和最后一个/,它是一种表示
Windows社区工具包
的官方文档中提供的仅针对数字的自定义正则表达式验证示例
它可以工作,但是如果我更改正则表达式并使用自定义正则表达式进行
NotNullOrEmpty
验证,那么它就不能工作。meanext:TextBoxRegex.IsValid
始终返回false。为什么?我测试了您在WindowsCommunityToolkit示例应用程序中提供的正则表达式:
它工作正常,即在输入文本后,将结果显示为True
请注意,正则表达式本身不包含第一个和最后一个/
,它是一种表示内部是正则表达式的语法。在XML中输入相关正则表达式时,只需输入内容
谢谢。您是否像在文档中一样使用它
extensions:TextBoxRegex.Regex=“^(?!\s*$)。+”
?xmlns:ext=“using:Microsoft.Toolkit.Uwp.UI.extensions”
是的,除了我使用ext
和idk,他们连一句话都没说就否决了这个问题:(你想用什么来匹配你的^(?!\s*$).+
RegEx?这对我来说有点奇怪。@bradbury9先生。从这个答案中,我得到了这个RegEx,以查看文本框文本是空的还是空的。非常感谢!正在工作,我现在得到了:)
<StackPanel Margin="10,0,10,0">
<TextBox Name="PhoneNumberValidator"
extensions:TextBoxRegex.Regex="^\s*\+?\s*([0-9][\s-]*){9,}$"
Header="Text box with Regex extension for phone number, validation occurs on TextChanged"
HeaderTemplate="{StaticResource HeaderTemplate}"
Style="{StaticResource TextBoxRegexStyle}" />
<StackPanel Orientation="Horizontal">
<TextBlock Text="Is Valid: " />
<TextBlock Text="{Binding (extensions:TextBoxRegex.IsValid), ElementName=PhoneNumberValidator, Converter={StaticResource StringFormatConverter}}" />
</StackPanel>
</StackPanel>