接着上一篇"如何为面向 Windows 的 MAUI Blazor 应用程序设置窗口标题?"

Tips: 总所周知,MAUI 除了 Windows App 其他平台窗口是没有 Title 这回事的.

在 Blazor 里面可以直接给页面打上 <PageTitle>MauiApp7test</PageTitle> 动态设置页面标题,在 Windows 的 MAUI Blazor 应用程序设置是没有效果的,因为这个只是设置了 BlazorWebView 控件的标题,并不是真正的窗口标题, 接着上一篇的知识改造一下动态设置标题:

工程文件 Platforms -> Windows -> App.xaml.cs
using Microsoft.UI;
using Microsoft.UI.Windowing;
using Microsoft.UI.Xaml;
using WinRT.Interop;
...
namespace MauiApp7test.WinUI
{
public partial class App : MauiWinUIApplication
{
public static object CurrentWindow;
public static AppWindow AppWindow; protected override void OnLaunched(LaunchActivatedEventArgs args)
{
base.OnLaunched(args); CurrentWindow = Application.Windows[0].Handler?.PlatformView;
IntPtr _windowHandle = WindowNative.GetWindowHandle(CurrentWindow);
var windowId = Win32Interop.GetWindowIdFromWindow(_windowHandle);
AppWindow = AppWindow.GetFromWindowId(windowId); SetTitle("MauiApp7test");
} public static void SetTitle(string title) => AppWindow.Title = title; protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
}
}

页面文件 Pages ->PagesIndex.razor

@code {
protected override void OnAfterRender(bool firstRender)
{
if (firstRender)
{
#if WINDOWS
WinUI.App.SetTitle("MauiApp7test - Index");
#endif
}
}
}

页面文件 FetchData.razor

@code {
private WeatherForecast[] forecasts; protected override async Task OnInitializedAsync()
{
#if WINDOWS
WinUI.App.SetTitle("MauiApp7test - Fetchdata");
#endif
forecasts = await ForecastService.GetForecastAsync(DateTime.Now);
}
}

运行效果

项目源码

Github | Gitee

知识共享许可协议

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名AlexChow(包含链接: https://github.com/densen2014 ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

AlexChow

今日头条 | 博客园 | 知乎 | Gitee | GitHub

MAUI Blazor (Windows) App 动态设置窗口标题的更多相关文章

  1. 乘风破浪,.Net Core遇见MAUI(.NET Multi-platform App UI),进击现代化跨设备应用框架

    什么是MAUI https://github.com/dotnet/maui .NET Multi-platform App UI (MAUI) 的前身是Xamarin.Forms(适用于Androi ...

  2. 微信小程序首页index.js获取不到app.js中动态设置的globalData的原因以及解决方法

    前段时间开发了一款微信小程序,运行了也几个月了,在index.js中的onLoad生命周期里获取app.js中onLaunch生命周期中在接口里动态设置的globalData一直没有问题,结果昨天就获 ...

  3. 如何使用 App Studio 快速定制你自己的 Universal Windows App

    之前我为大家介绍过 App Studio 这只神器可以帮助大家快速制作一个 Windows Phone 8 的应用,今天之所以在写一篇关于 App Studio 的文章是因为,App Studio 经 ...

  4. 怎样使用 App Studio 高速定制你自己的 Universal Windows App

    今天之所以在写一篇关于 App Studio 的文章是由于,App Studio 经过了几次升级功能得到了明显提升还能够调用系统功能了.而且能够更方便的和应用商店关联公布 Universal Wind ...

  5. 使用 MAUI 在 Windows 和 Linux 上绘制 PPT 的图表

    我在做一个图表工具软件,这个软件使用 MAUI 开发.我的需求是图表的内容需要和 PPT 的图表对接,需要用到 OpenXML 解析 PPT 内容,读取到 PPT 图表元素的内容,接着使用 MAUI ...

  6. 不可或缺 Windows Native (25) - C++: windows app native, android app native, ios app native

    [源码下载] 不可或缺 Windows Native (25) - C++: windows app native, android app native, ios app native 作者:web ...

  7. 尝试HTML + JavaScript 编写Windows App

    一直以来博文中使用最多的就是C# + XAML.进入Windows App时代,又多了一对 Javascript + HTML组合,这对于Web开发的程序员来说再熟悉不过了.其实小编也做过几年的Web ...

  8. Android 通过Java代码生成创建界面。动态生成View,动态设置View属性。addRules详解

    废话不多说,本文将会层层深入给大家讲解如何动态的生成一个完整的界面. 本文内容: Java代码中动态生成View Java代码中动态设置View的位置,以及其他的属性 LayoutParams详解 一 ...

  9. Silverlight动态设置WCF服务Endpoint

    2013-02-02 05:57 by jv9, 1763 阅读, 3 评论, 收藏, 编辑 去年12月收到一位朋友的邮件,咨询Silverlight使用WCF服务,应用部署后一直无法访问的问题,通过 ...

  10. DevExpres表格控件运行时动态设置表格列

    本文是系列文章,陆续发表于电脑编程技巧与维护杂志. DevExpres产品是全球享有极高声誉的一流控件套包产品!国内典型用户包括:用友.金蝶.神州数码.工信部.中国石化.汉王科技等众多大中型科技型企业 ...

随机推荐

  1. int和String的相互转化

    int和String的相互转化 将int转化为String 通过valueof( )方法进行转化 int a=100;String num1=String.valueOf(a);        Sys ...

  2. .Net 不受 EAR 的约束

    NPUlrk :https://github.com/NPUlrk  同学在 dotnet/runtime 仓库提出了一共问题: https://github.com/dotnet/runtime/d ...

  3. PPR的断管

    1. 小管径PPR管的断管 2. 大管径PPR管的断管

  4. python运行以及入门语法基础

    pycharm下载与使用 1.pycharm官网下载(直接到pycharm下载地址) http://www.jetbrains.com/pycharm/download/#section=window ...

  5. PAT甲级英语单词整理

    proper 正确 合适 vertex(vertices)顶点 respectively 个别 分别 indices 指标 索引 shipping 运输 incompatible 不相容 oxidiz ...

  6. 2022-08-05-欢迎使用_Typecho

    layout: post cid: 1 title: 欢迎使用 Typecho slug: start date: 2022/08/05 14:21:51 updated: 2022/08/05 14 ...

  7. Linux系统管理_软件管理

    RPM命令 #管理.rpm文件 #RPM包软件命名规则:name-version-releases.arch.rpm rpm -ivh pkgname #安装软件包 rpm -ivh --test p ...

  8. Eclipse插件RCP桌面应用开发的点点滴滴

    Eclipse插件开发的点点滴滴 新公司做的是桌面应用程序, 与之前一直在做的web页面 ,相差甚大 . 这篇文章是写于2022年10月底,这时在新公司已经入职了快三月.写作目的是:国内对于eclip ...

  9. 在不受支持的 Mac 上安装 macOS Ventura、Monterey、Big Sur (OpenCore Legacy Patcher)

    请访问原文链接:https://sysin.org/blog/install-macos-13-on-unsupported-mac/,查看最新版.原创作品,转载请保留出处. 作者主页:www.sys ...

  10. 嵌入式-C语言基础:二维数组的地址写法

    二维数组a的有关指针: 表示形式                                含义                                                   ...