我正在为WP8和CustomMessageBox开发一个应用程序。customMessageBox的内容包括textBox和LeftButton。我希望customMessageBox保持打开状态,直到用户在textBox中写入某些内容并进行更改。以下是一些代码:
this.Dismissed += async (sender, dismissedEvent) =>
{
switch (dismissedEvent.Result)
{
case CustomMessageBoxResult.LeftButton:
this.isSaved = await CreateUser();
break;
case CustomMessageBoxResult.None:
break;
case CustomMessageBoxResult.RightButton:
break;
default:
break;
}
};我为以下代码创建了布尔变量isSaved:
this.Dismissing += (sender, e) =>
{
if (!this.isSaved)
{
e.Cancel = false;
}
};但是它不起作用--也许e.Cancel是用来做别的事情的,虽然我找不到关于它的任何文档。方法CreateUser()验证输入并将其保存到db。
我在网上搜索解决方案,但什么也找不到,如果你能帮我,或者告诉我在哪里能找到解决方案,我会非常感激的。提前谢谢你!
发布于 2013-11-19 12:55:00
这个呢..。
private async void CmbDismissing(object sender, DismissingEventArgs e)
{
if (e.Result == CustomMessageBoxResult.LeftButton)
{
// still open
e.Cancel = true;
bool isSaved = await this.CreateUser();
// close
if (isSaved)
{
((CustomMessageBox)sender).Dismiss();
}
}
}https://stackoverflow.com/questions/20070549
复制相似问题