当前位置: 首页 > news >正文

【Maui】提示消息的扩展

文章目录

  • 前言
  • 一、问题描述
  • 二、解决方案
  • 三、软件开发(源码)
    • 3.1 消息扩展库
    • 3.2 消息提示框使用
    • 3.3 错误消息提示使用
    • 3.4 问题选择框使用
  • 四、项目展示


前言

.NET 多平台应用 UI (.NET MAUI) 是一个跨平台框架,用于使用 C# 和 XAML 创建本机移动和桌面应用。
使用 .NET MAUI,可从单个共享代码库开发可在 Android、iOS、macOS 和 Windows 上运行的应用。

.NET MAUI 是一款开放源代码应用,是 Xamarin.Forms 的进化版,从移动场景扩展到了桌面场景,并从头重新生成了 UI 控件,以提高性能和可扩展性。 如果以前使用过 Xamarin.Forms 来生成跨平台用户界面,那么你会注意到它与 .NET MAUI 有许多相似之处。 但也有一些差异。 通过使用 .NET MAUI,可使用单个项目创建多平台应用,但如果有必要,可以添加特定于平台的源代码和资源。 .NET MAUI 的主要目的之一是使你能够在单个代码库中实现尽可能多的应用逻辑和 UI 布局。

一、问题描述

二、解决方案

三、软件开发(源码)

3.1 消息扩展库

文件名:MessageExtension.cs

using CommunityToolkit.Maui.Alerts;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using App.Mes.Core.Operation.Entities.Tissue;
using App.Mes.Core.Operation.Services.Mobile;namespace GlueNet.Mobile.Utils
{/// <summary>/// 消息提示扩展/// 创建人:gyc/// 创建时间:2025/01/20/// </summary>public static class MessageExtension{public static async Task DisplayAlert(string title, string message, string cancel){if (Application.Current?.MainPage != null){await Application.Current.MainPage.DisplayAlert(title, message, cancel);}}public static async Task<bool> DisplayAlert(string title, string message, string accept, string cancel){if (Application.Current?.MainPage != null){return await Application.Current.MainPage.DisplayAlert(title, message, accept, cancel);}return false;}/// <summary>/// 信息提示/// </summary>/// <param name="message"></param>/// <returns></returns>public static async Task Info(string message){await DisplayAlert("提示", message, "确定");}/// <summary>/// 错误提示/// </summary>/// <param name="message"></param>/// <returns></returns>public static async Task Error(string message){await DisplayAlert("错误提示", message, "确定");}/// <summary>/// 询问提示/// </summary>/// <param name="message"></param>/// <returns></returns>public static async Task<bool> Question(string message){return await DisplayAlert("提示", message, "确定", "取消");}}
}

3.2 消息提示框使用

await MessageExtension.Info("更新成功记录" + sb_success.Length + "条");

3.3 错误消息提示使用

await MessageExtension.Error("服务器数据处理失败,请联系IT");

3.4 问题选择框使用

 bool result = await MessageExtension.Question($"你确定删除单号:{MO1002EditAllVM.SelectedDetail.CReservedSeqNo}吗?");if (result){Tax2011 tax2011_del = new Tax2011(){CReservedNo = MO1002EditAllVM.SelectedDetail.CReservedNo,CReservedSeqNo = MO1002EditAllVM.SelectedDetail.CReservedSeqNo,CMtrlType = MO1002EditAllVM.Master.CMtrlType, //物料类型CMtrlNo = MO1002EditAllVM.SelectedDetail.CMtrlNo, //物料编号CPieceNo = MO1002EditAllVM.SelectedDetail.CPieceNo, //条码号};string str_Result = GycMobileService.Proxy.DeleteDetailTAX_2011(tax2011_del);var var_MobileResult = JsonConvert.DeserializeObject<MobileResult>(str_Result);if (var_MobileResult.IsSuccess){await MessageExtension.Info(var_MobileResult.Remark);FetchDataTAX2011();}else{await MessageExtension.Error(var_MobileResult.Remark);}}else{Toaster.Show("你已取消操作");}

四、项目展示

在这里插入图片描述

http://www.lryc.cn/news/525612.html

相关文章:

  • 租车骑绿岛
  • Pytorch - YOLOv11自定义资料训练
  • 微服务与docker
  • 1.23 消息队列
  • 【华为路由的arp配置】
  • 绘制决策树的尝试1
  • 概率论里的特征函数,如何用卷积定理去理解
  • Spring 是如何解决循环依赖问题
  • Linux 目录操作详解
  • Elasticsearch的经典面试题及详细解答
  • Linux-arm(1)ATF启动流程
  • C#编程:List.ForEach与foreach循环的深度对比
  • C语言文件操作:标准库与系统调用实践
  • 代码随想录 栈与队列 test 7
  • C语言练习(21)
  • 智能手机“混战”2025:谁将倒下而谁又将突围?
  • 计算机图形学:实验一 OpenGL基本绘制
  • 二分查找题目:快照数组
  • 深度学习|表示学习|卷积神经网络|参数共享是什么?|07
  • 基于相机内参推导的透视投影矩阵
  • 浅析Dubbo 原理:架构、通信与调用流程
  • 03垃圾回收篇(D3_垃圾收集器的选择及相关参数)
  • 一、引论,《组合数学(第4版)》卢开澄 卢华明
  • Vue3+TS 实现批量拖拽文件夹上传图片组件封装
  • 二叉树的所有路径(力扣257)
  • Python OrderedDict 实现 Least Recently used(LRU)缓存
  • LabVIEW项目中的工控机与普通电脑选择
  • Ansys Speos | Speos Meshing 网格最佳实践
  • elasticsearch segment数量对读写性能的影响
  • 全同态加密理论、生态现状与未来展望(中2)