天天看点

跨平台 MAUI 通讲系列三:各式弹窗,非常漂亮

Net开发平台中Windows Form 使用MessageBox.show 来显示各式弹框,那么MAUI 如何显示弹框呢?

.NET 多平台应用 UI (.NET MAUI) 类Page上有三种方法,用于通过弹出窗口与用户交互:DisplayAlert和

DisplayActionSheetDisplayPromptAsync。 弹出窗口在每个平台上都呈现有本机控件。

我们先来看下DisplayAlert 弹窗显示:

第一种 提示信息、警告信息

private void Button_Clicked(object sender, EventArgs e)
    {
        DisplayAlert("Alert", "You have been alerted", "OK");
    }      

效果如下:

跨平台 MAUI 通讲系列三:各式弹窗,非常漂亮

弹出窗口默认具有背景变灰特效,弹窗具有圆角,很有立体感。设计满分。

bool answer = await DisplayAlert("Question?", "Would you like to play a game", "Yes", "No");
Debug.WriteLine("Answer: " + answer);      

 喜欢文章的转发关注哦。一起学习新技术!!!

跨平台 MAUI 通讲系列三:各式弹窗,非常漂亮

具有确定与否的原则框样式。

第二种 指导用户完成任务

如下:

跨平台 MAUI 通讲系列三:各式弹窗,非常漂亮
string action = await DisplayActionSheet("ActionSheet: Send to?", "Cancel", null, "Email", "Twitter", "Facebook");
Debug.WriteLine("Action: " + action);      

操作表向用户提供有关如何继续执行任务的一组替代项。 若要显示操作表,请使用 DisplayActionSheet 任意 Page操作表的方法,将消息和按钮标签作为字符串传递:

用户点击其中一个按钮后,按钮标签将作为一个 string返回。

操作表还支持销毁按钮,该按钮表示破坏性行为的按钮。 销毁按钮可以指定为方法的第三个字符串参数 DisplayActionSheet ,也可以保留 null。 以下示例指定销毁按钮

async void OnActionSheetCancelDeleteClicked(object sender, EventArgs e)
{
  string action = await DisplayActionSheet("ActionSheet: SavePhoto?", "Cancel", "Delete", "Photo Roll", "Email");
  Debug.WriteLine("Action: " + action);
}      

效果如图:

跨平台 MAUI 通讲系列三:各式弹窗,非常漂亮

第三种 显示提示 获取返回输入

string result = await DisplayPromptAsync("Question 1", "What's your name?");      

继续阅读