MAUI+Blazor:隐藏标题栏和问题

news2024/11/25 13:23:57

文章目录

  • 前言
  • 相关文章
  • 代码
    • 问题
    • 有必要解决吗?

前言

最近在研究MAUI+Blazor开发,发现一个问题,原生的的标题栏实在是太丑了。

相关文章

MAUI桌面端标题栏设置和窗口调整

MAUI Windows How to completely hide the TitleBar? #15142

MAUI how to remove the Title Bar and fix the window size?
.NET MAUI: Is there a way to hide the Navigation Bar/Title Bar when using Shell?

代码

在这里插入图片描述
在这里插入图片描述

#if WINDOWS
            builder.ConfigureLifecycleEvents(events =>
            {
                // Make sure to add "using Microsoft.Maui.LifecycleEvents;" in the top of the file 
                events.AddWindows(windowsLifecycleBuilder =>
                {
                    windowsLifecycleBuilder.OnWindowCreated(window =>
                    {
                        window.ExtendsContentIntoTitleBar = false;
                        var handle = WinRT.Interop.WindowNative.GetWindowHandle(window);
                        var id = Microsoft.UI.Win32Interop.GetWindowIdFromWindow(handle);
                        var appWindow = Microsoft.UI.Windowing.AppWindow.GetFromWindowId(id);
                        if (appWindow.Presenter is OverlappedPresenter pre)
                        {
                            pre.IsMaximizable = false;
                            pre.IsResizable = false;
                            pre.IsMinimizable = false;
                            pre.SetBorderAndTitleBar(false, false);
                        }
                    });
                });
            });
#endif

边框去除成功!
在这里插入图片描述

问题

但是有一个问题,就是无法拖动整个窗口了。
后来我才知道,为什么Windows平台专门有这个东西了,原因就是因为他帮我们封装了:

  • 窗口拖动
  • 窗口缩放
  • 窗口隐藏
  • 关闭窗口

这四个功能,如果我们隐藏了标题栏,那么我们就要重新写一下这四个功能了。如果有特殊需求那就需要定制才行。如果我们用Blazor去写,我们就要重新写这四个功能。我过段时间研究一下怎么解决。

有必要解决吗?

其实没多大必要解决,除非你想把标题栏改的很复杂,不然没必要这么做。因为MAUI+Blazor开发讲究的就是一个快。我视图层用Blazor去展示,然后间接调用C#代码。视图逻辑Blazor自己解决。真想定制标题栏就把标题栏隐藏了自己重新就行了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/873091.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Actuator微服务信息完善-Eureka—SpringCloud(版)微服务学习教程(11)

一、Actuator是什么? Actuator是Springboot提供的用来对应用系统进行自省和监控的功能模块,借助于Actuator开发者可以很方便地对应用系统某些监控指标进行查看、统计等。 在Springboot中使用Actuator监控非常简单,只需要在工程POM文件中引入…

Unity 射线检测

文章目录 1. 定义2. 重要类和方法2.1 Ray2.2 从屏幕发出射线:2.3 Raycast2.4 RaycastAll2.5 RaycastHit 碰撞信息2.6 layerMask 让射线检测只检测指定层级的对象 1. 定义 在Unity中,射线检测(Raycasting)是一种常用的技术&#x…

计网第一章

注意:计网知识点十分多,在本篇及后续博客主要记录个人认为比较重要的知识点。 1.计算机网络的基本概念 计算机网络就是自治的计算机互连起来的集合。计算机网络可以简称为网络,而互连网就是把许多网络连接起来,即网络的网络。 …

Linux发行版连接数位板手写板以后映射方向不对?

首先查看连接的设备: xinput list 如果像下图这样,鼠标类设备里面没有,只有键盘设备里面有你的数位板,那你就拿着笔到数位板上面比划比划,然后点一点笔上的按键,这样就能识别笔和按住按钮时候橡皮了。 比划…

每期一个小窍门: 玩转go mod 命令

看完本期小窍门 你将学会 go下载/更新 包的命令如何挎包调用/路径名称约定init()函数的作用和一些细节 本文涉及到的目录结构如下 关于 go.mod go.sum 这个demo依赖 github.com/bytedance/sonic 可以使用下面两个命令来确保依赖正常加载 go get github.com/bytedance/son…

【5G 核心网】5G 多PDU会话锚点技术介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

HRS--人力资源系统(Springboot+vue)(一)配置环境--登录篇

原谅我的三心二意,心血来潮写一个人力资源系统练练手 一上来就报错,老天待我不薄,手中拳头紧握。。。 问题一:这个错误头疼,推测是因为用了是新建的springboot maven项目是springboot3.0以上要jdk17以上等导致的&#…

Labview解决“重置VI:xxx.vi”报错问题

文章目录 前言一、程序框图二、前面板三、问题描述四、解决办法 前言 在程序关闭前面板的时候小概率型出现了 重置VI:xxx.vi 这个报错,并且发现此时只能通过任务管理器杀掉 LabVIEW 进程才能退出,这里介绍一下解决方法。 一、程序框图 程序…

连接不上手机,adb devices为空:

首先说明一下,我是已经安装了android studio,也配置了环境变量,但是还是连接不上手机 解决方案: 1.打开开发者模式 https://product.pconline.com.cn/itbk/sjtx/sjwt/1424/14246015.html 2.开启usb调试 https://baiyunju.cc/10770 最后成功…

Day 26 C++ list容器(链表)

文章目录 list基本概念定义结构双向迭代器优点缺点List和vector区别存储结构内存管理迭代器稳定性随机访问效率 list构造函数——创建list容器函数原型示例 list 赋值和交换函数原型 list 大小操作函数原型示例 list 插入和删除函数原型示例 list 数据存取函数原型注意示例 lis…

JVM——栈和堆概述,以及有什么区别?

方法栈 方法栈并不是某一个 JVM 的内存空间,而是我们描述方法被调用过程的一个逻辑概念。 在同一个线程内,T1()调用T2(): T1()先开始,T2()后开始;T2()先结束,T1()后结束。 堆和栈概述 从英文单词角度来…

【效率系列】简化繁杂表单数据处理,迅速增强办公数字化能力

写在前面 数据处理是数据分析的奠基石,只有使用处理干净的数据,分析才会产生价值。简单而言,数据处理的终极目的是将非结构化数据转换为结构化数据。 虽然数据处理自身未必直接产生数据价值,但其过程往往相当耗时,因此…

【Vue3-Router】历史记录

replace App.vue <template><h1>hello world</h1><div><!-- replace 不保存历史记录 --><router-link replace to"/">login</router-link><router-link replace style"margin-left: 10px;" to"/reg&q…

高效实用小工具之Everything

一&#xff0c;简介 有时候我们电脑文件较多时&#xff0c;想快速找到某个文件不是一件容易的事情&#xff0c;实用windows自带的搜素太耗时&#xff0c;效率不高。今天推荐一个用来搜索电脑文件的小工具——Everything&#xff0c;本文将介绍如何安装以及使用everything&…

Redis——三个特殊的数据类型+事务

概述 全称为远程字典服务。 Redis——基础篇(包含redis在云服务上的docker化安装和连接以及常用命令)_连接docker中的redis_北岭山脚鼠鼠的博客-CSDN博客 Redis能干什么&#xff1f; 1.内存存储、持久化&#xff0c;内存中是断电即失&#xff0c;因此持久化很重要&#xff…

C++ 虚继承

C棱形继承 在 C 中&#xff0c;在使用 多继承 时&#xff0c;如果发生了如果类 A 派生出类 B 和类 C&#xff0c;类 D 继承自类 B 和类 C&#xff0c;这时候就发生了菱形继承。 如果发生了菱形继承&#xff0c;这个时候类 A 中的 成员变量 和 成员函数 继承到类 D 中变成了两…

开源可商业运营的ChatGpt网页源码v1.2.2

&#x1f916; 主要功能 后台管理系统,可对用户,Token,商品,卡密等进行管理 精心设计的 UI&#xff0c;响应式设计 极快的首屏加载速度&#xff08;~100kb&#xff09; 支持Midjourney绘画和DALLE模型绘画,GPT4等应用 海量的内置 prompt 列表&#xff0c;来自中文和英文 一键导…

CV_tutorial1

CV Entry-Level Recurrent Neural Networks序列数据sequence data语言模型languag model循环神经网络recurrent neural networks门控循环单元gated recurrent unit长短期记忆网络long short-term memory OpenCV 图形图像操作文档矫正Gamma变化开运算 传统图像分割分水岭算法 Re…

NX/UG二次开发—建模—文字中心线提取思路简介

一、中心线提取 1、离散文字平面&#xff1a; 离散文字平面&#xff0c;构建一个二维矩阵数组&#xff08;实际操作时用的一维数组&#xff09; 1.1最小边界盒子&#xff1a; 可以计算文字平面的最小边界盒子&#xff0c;然后按步距在平面上采点&#xff0c;优点是点距比较…

【TODO】米哈游20230813笔试第三题

是计算抽中什么当期五星的期望。 现在的程序结果是99.6087。结果不对&#xff0c;有时间再调。 #include <iostream> #include <bits/stdc.h> typedef long long LL; using namespace std;int n 90; double p; // double min_p 1e-7; double min_p 0.0000000000…