我正在做一个Windows Phone 8.1项目 . 在XAML中,我有两个文本框,一个用于名字,另一个用于最后一个,还有一个按钮 . 在按钮点击事件中,我想显示一条消息,说“blah blah blah”如果文本框中的任何一个(或两个)都是空的 .
我尝试了很多方法,但未能得到这个 . 这是我能得到的最好的,但它不起作用:
private async void Button_Click(object sender, RoutedEventArgs e)
{
if ((Textbox_first_name.DataContext== null) || (Textbox_last_name.DataContext== null))
{
var dialog = new MessageDialog("message 2", "message 1");
await dialog.ShowAsync();
}
else
{
Frame.Navigate(typeof(page3));
}
}
使用DataContext,我会收到消息 . 但即使我输入任何内容,它也不会将我带到第3页 . 它只是显示消息 . 所以,它似乎没有承认else块 .
我试过了
if ((Textbox_first_name_extractor.Text== null) || (Textbox_last_name_extractor.Text== null))
//same everything else
消息甚至没有来 . 它会立即带我到第三页,即使它是空的 . 我不知道我做错了什么,或者不知道 . 请帮忙!
Windows 8.1; VS2013 Updt4;
2 回答
你可以尝试:
作为你的if语句 . 这将检查null或空/空白填充的字符串 .
但是,您是否尝试过调试应用程序?如果是这样,你检查了两个文本框的.Text的内容是什么?
或者,如果您使用XAML,为什么不使用数据绑定并验证绑定属性?
您可以通过Text property访问TextBox的文本,在这种情况下使用String.IsNullOrEmpty(或String.IsNullOrWhitespace,根据您的需要)验证它: