使用Material Design MAUI库添加mdc:Button后应用崩溃求助
Material Design MAUI按钮导致Windows平台应用崩溃的问题排查与解决
问题描述
使用Material Design MAUI库,已按官方入门指南完成配置,但在MainPage.xaml中添加任何<mdc:Button>控件后,Windows平台运行时应用短暂启动即崩溃,跳转至App.g.i.cs的global::System.Diagnostics.Debugger.Break();代码行,无应用界面显示。
原因分析
核心问题是缺少Material Components MAUI的初始化代码。你的MauiProgram.cs仅导入了库的命名空间,但未调用库的初始化扩展方法,导致Material控件无法完成必要的资源注册与初始化流程,进而引发运行时崩溃。
解决步骤
- 修改
MauiProgram.cs,在builder.UseMauiApp<App>()的链式调用中添加.UseMaterialComponents():
修改后的完整代码:
using Microsoft.Extensions.Logging; using Material.Components.Maui.Extensions; namespace MyFirstMauiApp { public static class MauiProgram { public static MauiApp CreateMauiApp() { var builder = MauiApp.CreateBuilder(); builder .UseMauiApp<App>() .UseMaterialComponents() // 新增初始化代码 .ConfigureFonts(fonts => { fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); }); return builder.Build(); } } }
- 重新编译并运行应用,此时
<mdc:Button>控件可正常渲染,应用不再崩溃。
补充说明
后续使用Material Design MAUI的其他控件(如对话框、菜单等)时,需始终保留.UseMaterialComponents()初始化代码,这是库正常运行的基础配置项。
内容的提问来源于stack exchange,提问作者SE User
相关产品推荐
相关产品推荐

