我有MessageDialog对话负责删除确认。
private async void ShowDialogClick(object sender, RoutedEventArgs e)
{
MessageDialog md = new MessageDialog("Are your sure you want to delete this?");
md.Commands.Add(new UICommand("Delete",
new UICommandInvokedHandler(DeleteItemHandler)));
md.Commands.Add(new UICommand("Cancel"));
await md.ShowAsync();
}当用户单击Delete时,DeleteItemHandler调用数据库上的操作,但如何通知用户操作不成功?
我试图创建新的MessageDialog,但我得到了win32 exception。
private async void DeleteItemHandler(IUICommand command)
{
MessageDialog md = new MessageDialog("New content");
String result = DbDeletation();
if(result != "OK")
await md.ShowAsync();
}告诉用户错误的最好方法是什么?
发布于 2014-02-16 01:43:43
根据Windows商店应用程序指南的说法,MessagegDialog不是确认删除的好方法。
当应用程序需要确认用户对用户所采取的行动的意图时,适当的表面是“飞出”。请参阅暂退指南。
现在我有了更干净的代码..。
private async void DeleteItem_Click(object sender, RoutedEventArgs e)
{
MessageDialog md = new MessageDialog("Error");
String result = DbDeletation();
if (result != "OK")
await md.ShowAsync();
}更温和的解决方案:)
<Button HorizontalAlignment="Center"
VerticalAlignment="Center"
Content="Show Dialog">
<Button.Flyout>
<Flyout>
<StackPanel>
<TextBlock>Are your sure you want to delte this?</TextBlock>
<Button Click="DeleteItem_Click"
Content="Delete"
HorizontalAlignment="Right"/>
</StackPanel>
</Flyout>
</Button.Flyout>
</Button>发布于 2014-02-16 00:52:29
您不能自定义MessageDialos并在一行中调用它们,因此,您有两种方法:
Delete附近)。第二种方法更适合Windows商店应用程序指南。
https://stackoverflow.com/questions/21805743
复制相似问题