0
我的應用程序使用ContentDialog作爲插入數據的手段。換一種說法;數據表單是一個ContentDialog。在驗證用戶輸入過程中,應用程序應通過使用MessageDialog向用戶提示任何錯誤。但是,解僱MessageDialog也會解散ContentDialog。UWP阻止MessageDialog關閉父ContentDialog
這裏是代碼的塊時,將顯示警告:
private void ContentDialog_PrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
{
//save item
ValidateForm();
}
private void ContentDialog_SecondaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
{
}
private async void ValidateForm()
{
//Ensure all fields are filled
String barcode = BarcodeText.Text.Trim();
String desc = DescText.Text.Trim();
String cost = CostText.Text.Trim();
String price = PriceText.Text.Trim();
String stock = StockText.Text.Trim();
if(barcode.Equals(String.Empty) || desc.Equals(String.Empty) ||
desc.Equals(String.Empty) || cost.Equals(String.Empty) ||
price.Equals(String.Empty) || stock.Equals(String.Empty))
{
var dialog = new MessageDialog("Please fill in all fields");
await dialog.ShowAsync();
return;
}
//check uniqueness of the barcode
}
我應該怎麼做,以防止警報從關閉父ContentDialog?
您還需要考慮推遲對'ContentDialogButtonClickEventArgs'因爲你直到異步操作完成後才設置'Cancel'。 –
謝謝@RaymondChen。我已將它添加到示例代碼中。 –