标签: maui

.net maui 中的自定义控件和渲染器会发生什么?

在我当前的 Xamarin.Forms 项目中,我为不同的需求创建了许多渲染器。现在 9 月毛伊岛即将到来,我们必须将我们的项目迁移到那里。那么渲染器会发生什么?它会按原样工作还是我们不需要渲染器?

c# xamarin.ios xamarin xamarin.forms maui

2
推荐指数
2
解决办法
123
查看次数

.NET 6 发布 Android 应用程序

如何在 VS2022 中发布 Android 应用程序?我从“Android 应用程序(预览)”模板开始。一切在模拟器中运行良好。单击项目上的“发布”时,只会创建一个 *.nupgk。单击“查看存档...”时,会显示解决方案,但唯一的文本是“没有可用的存档版本”,而且我没有看到任何创建存档的选项。

编辑:通过发布我的意思是创建可以安装的 *.apk。我不需要发布到 Google Play 或任何其他商店。

c# android maui .net-6.0 visual-studio-2022

2
推荐指数
1
解决办法
2786
查看次数

如何在 .NET MAUI 中为多个按钮创建单击事件

我创建了一个简单的应用程序,其中有很多按钮,并且我想为所有按钮创建一次单击事件,那么 xamarin 表单或 .net maui 中的逻辑是什么?

.net xamarin xamarin.forms maui

2
推荐指数
1
解决办法
3206
查看次数

在毛伊岛打开一个新窗口

在 WPF 中,以下代码打开一个新窗口。

Window abc = new Window();
abc.Show();
Run Code Online (Sandbox Code Playgroud)

但对于 MAUI 窗口,我找不到显示选项。如何在 MAUI 中打开窗口?

maui

2
推荐指数
1
解决办法
6048
查看次数

如何在 Android 上使用 .NET MAUI 的 BroadcastReceiver?

我有来自为 Xamarin.Android(不是 Forms)编写的示例应用程序的现有代码。我需要在为 .NET MAUI(所有 Xamarin 的继承者)编写的新应用程序中使用它。它使用 BroadcastReceiver 来了解 USB 设备何时与手机分离。但这在毛伊岛不起作用。

这是旧代码:

public partial class MainPage : ContentPage
{
    private BroadcastReceiver detachedReceiver;

    public MainPage()
    {
        InitializeComponent();
    }

    protected override void OnAppearing()
    {
        base.OnAppearing();

        OnScanClicked(this, EventArgs.Empty);

        // TODO: Fix for MAUI
        //register the broadcast receivers
        detachedReceiver = new UsbDeviceDetachedReceiver(this);
        RegisterReceiver(detachedReceiver, new IntentFilter(UsbManager.ActionUsbDeviceDetached));
    }

    protected override void OnDisappearing()
    {
        base.OnDisappearing();

        CloseDevice();

        // TODO: Fix for MAUI
        var temp = detachedReceiver; // copy reference for thread safety
        if (temp != null)
            UnregisterReceiver(temp);
    } …
Run Code Online (Sandbox Code Playgroud)

.net android maui

2
推荐指数
1
解决办法
5623
查看次数

如何在 .NET MAUI/Blazor 混合上的 TabBar 上导航?

所以我只是尝试 .NET MAUI/Blazor Hybrid。

我按照 .NET MAUI 指南来设置我的 TabBar,结果如下所示:

在此输入图像描述

但是,我需要将每个选项卡链接到剃刀页面,因此 ContentTemplate="{DataTemplate local:Home}" 例如不起作用。

有人知道我如何将每个选项卡链接到剃刀页面吗?

.net blazor maui maui-blazor

2
推荐指数
1
解决办法
2831
查看次数

信任其他 CA 并在 net6 MAUI 解决方案中使用 Android 证书存储

System.Net.WebException: 
java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.'
Run Code Online (Sandbox Code Playgroud)

这是我的 VS2022 解决方案在使用自签名证书和 Android 时出现的错误。

案例如下:
它是一个在本地网络上运行的 Android 应用程序,具有本地 https 后端服务。域管理员已为此服务颁发了证书。但是,该域不是官方 CA(证书颁发机构)。然后,您必须通过设置手动安装 CA。

解决方案的一部分
我为解决此问题所做的是将 CA 证书添加到 Android 设备(通过“设置”>“安全”->“加密和凭据”->“安装证书”)。

Android 应用程序中的 Web 浏览器现在可以成功访问 https 站点,而不会出现警告。

我仍然需要帮助,
但是除非通过网络安全配置进行配置,否则无法通过应用程序访问 CA 商店: https://developer.android.com/training/articles/security-config#TrustingAdditionalCas

这是可以在 Xamarin 时代完成的事情,例如:

但在MAUI我有点迷失,我没有看到合适的资源,mipmap等。

我想用这样的一句话来解决这个问题:

[程序集:应用程序(UsesCleartextTraffic = true)]

...也可以通过网络安全配置进行配置。

是否有一句话或者有人可以帮助我配置我的网络安全配置以使 CA 商店在 MAUI 解决方案中可用?

c# android xamarin.android maui

2
推荐指数
1
解决办法
4319
查看次数

如何使用 c# 而不是 xaml 创建 .Net Maui ContentPage?

.Net Maui ContentPage文档提供了一个 XAML 示例。但没有 c# 示例。

如何仅使用 C# 创建 ContentPage?

c# xaml maui

2
推荐指数
1
解决办法
4421
查看次数

为什么 iOS 上的 MAUI 应用启动时间这么慢?

我面临的问题是 iOS 上的 MAUI 应用程序启动比 Android 或 Windows 上慢得多。

部署是使用 Visual Studio 版本 17.3.0 Preview 1.1 完成的,我尝试创建和部署一个新项目,而不进行任何添加。

iOS 上的启动(iPhone、iPad 已更新至最新操作系统版本) > 10 秒
Android < 2 秒
Windows < 2 秒

找不到与此相关的任何资源。

使用 Visual Studio 17.2 构建和部署的 PS Xamarin Forms 普通应用程序速度更快,在相同设备上不到 4 秒。

.net startup ios maui .net-maui

2
推荐指数
1
解决办法
2044
查看次数

使用 CommunityToolkit.MVVM 将参数从 ViewModel 传递到 .NET MAUI 中的 ViewModel

我的接收 Viewmodel (QuestionsPageViewModel) 在通过 Shell 导航传递 TopidId 后未收到 TopidId,如下面的代码所示。我已将断点放置在 QuestionsPageViewModel 中的 LoadQuestions 方法处。调用时TopicId为null。我缺少什么?

主页视图模型

//This is in a command executed after clicking a button. And this is working fine
await Shell.Current.GoToAsync($"{nameof(QuestionsPage)}?TopicId={pack.TopicId}");
Run Code Online (Sandbox Code Playgroud)

问题页面视图模型

[INotifyPropertyChanged]
[QueryProperty(nameof(TopicId), nameof(TopicId))]
    public partial class QuestionsPageViewModel
    {
        public ObservableRangeCollection<Question> QuestionsList { get; set; } = new();
        [ObservableProperty]
        string? title;

        [ObservableProperty]
        public string topicId;

        public QuestionsPageViewModel()
        {
            LoadQuestions();
        }

        async void LoadQuestions()
        {
            Title = Utilities.ConvertTopicIdToString(short.Parse(TopicId));

            try
            {
                using (var context = new DataContext())
                {
                    QuestionPack questionPack = …
Run Code Online (Sandbox Code Playgroud)

maui .net-maui

2
推荐指数
1
解决办法
5608
查看次数