更新到 Visual Studio 17.6.3、Xamarin 17.6.0.251 和 MacOS Ventura 13.4 后,我无法再部署和运行适用于 Windows 的 VS iOS Simulator。
应用程序构建并启动 Windows 模拟器,但模拟器从未连接到 Mac,并且应用程序未部署。相反,模拟器会陷入“正在连接到 Mac...检查服务器...已连接...”循环。
部署到物理设备按预期工作。
虽然有记录的 Xamarin Forms 应用程序到 .NET MAUI 的升级路径,但 Xamarin for Mac 似乎并非如此,并且对 Xamarin 的支持将于 2024 年 5 月结束。那么 Xamarin for Mac 的情况是否如此桌面应用程序需要从头开始重新开发吗?我看不到任何将 C#/链接转换为 XCode GUI 开发方法到 .NET MAUI 的方法。
已搜索 Xamarin for Mac 应用程序到 .NET MAUI 的升级路径,但尚未找到。
我创建了一个 dotnet MAUI 应用程序。对于某些页面,需要禁用 Android 的后退按钮。
我找到了这篇文章,但它只在主页上找到了。有什么办法可以禁用它吗?
这是页面 xaml 文件:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="UI.Pages.ScreenPlacementSelectingPage"
Shell.NavBarIsVisible="false"
Title="">
<Shell.BackButtonBehavior>
<BackButtonBehavior IsEnabled="False">
</BackButtonBehavior>
</Shell.BackButtonBehavior>
<Grid x:Name="AbsolutLayout"
VerticalOptions="Center"
HorizontalOptions="Center"
>
<Image
x:Name="UIbackground"
Aspect="Fill"
Source="uibackground.png"
/>
<Grid x:Name="gridLayout"
RowDefinitions="*,Auto,Auto,*"
ColumnDefinitions="*,Auto,Auto,*"
>
</Grid>
</Grid>
</ContentPage>
Run Code Online (Sandbox Code Playgroud) 我需要从存储中打开一个文件。我使用过Launcher.OpenAsync(),但它总是尝试在 PDF 阅读器中打开文件。有没有其他方法可以在 Android 上使用默认应用程序打开文件?
这是我已经尝试过的代码。
private void OpenDocument(string filePath)
{
var localFile = "file://" + filePath;
Launcher.OpenAsync(localFile);
}
Run Code Online (Sandbox Code Playgroud) 我想使用 MAUI,因此安装了所有必要的东西(部分使用 maui-check)。
dotnet new maui正如一些教程中给出的,我现在想使用命令行创建一个新项目。但我只收到一条错误消息:
找不到匹配的模板:“maui”。
要列出已安装的模板,请运行“dotnet new --list”。
要在 NuGet.org 上搜索模板,请运行“dotnet new maui --search”。
那么为什么我不能使用这个命令呢?
我们目前刚刚开始在 .NET Standard 中编写类库,因此我们可以将其用于 WPF、Winforms 和带有 Ubuntu Server 的 .Net Core(但没有 GUI)。.Net 5 不支持我们的 .NET 4.6.x 应用程序使用 Winforms 或 WPF。
我的问题是,.NET MAUI 是否与 .NET Standard 2.0 类库兼容?
当我查看 .NET Standard 网站时,它说与 .NET 6.0 兼容,但我找不到是否也兼容 .NET MAUI 框架。
https://dotnet.microsoft.com/platform/dotnet-standard#versions
在我的 .Net Maui 项目中,我在 ControlTemplate 中使用 CollectionView。实现看起来像这样:
<ContentView.ControlTemplate>
<ControlTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<SearchBar
x:Name="ObjectSearchBar"
Grid.Row="0"
IsSpellCheckEnabled="False"
Keyboard="Text"
Placeholder="{TemplateBinding SearchBarPlaceholderText}"
TextChanged="ObjectSearchBar_TextChanged" />
<CollectionView
x:Name="ObjectResultView"
Grid.Row="1"
Margin="10,10,10,10"
ItemSizingStrategy="MeasureAllItems"
ItemTemplate="{StaticResource templateSelector}"
ItemsLayout="VerticalList"
ItemsSource="{TemplateBinding DataSource}"
SelectionChanged="ObjectResultView_SelectionChanged"
SelectionMode="Single">
</CollectionView>
</Grid>
</ControlTemplate>
<ContentView.ControlTemplate>
Run Code Online (Sandbox Code Playgroud)
我在 ContentPage 中使用此 ContentView。该页面包含 2 个 StackLayout,其实现如下所示:
<ContentPage.Content>
<Grid>
<StackLayout
HorizontalOptions="FillAndExpand"
IsVisible="{Binding AddNewSectionIsVisible, Converter {converter:InvertedBoolConverter}}"
Orientation="Vertical"
VerticalOptions="FillAndExpand">
<controls:ObjectSearchControl
DataSource="{Binding DataSource}"
FilterChangedCommand="{Binding FilterChangedCommand}"
HorizontalOptions="FillAndExpand"
ObjectSelectedCommand="{Binding SelectedCommand}"
SearchBarPlaceholderText="ABC"
VerticalOptions="FillAndExpand" />
</StackLayout>
<StackLayout
HorizontalOptions="FillAndExpand"
IsVisible="{Binding AddNewSectionIsVisible}"
Orientation="Vertical"
Style="{StaticResource rootStackLayout}"
VerticalOptions="Center"> …Run Code Online (Sandbox Code Playgroud) 有没有办法在新的 .net Maui 中为移动应用程序(Android、Ios 和 WinApp)创建可拖动项目的布局?
我一直在寻找该平台可以做什么,但目前还没有找到任何东西。
我正在制作一个移动和 PC 应用程序,我想添加一个按钮来打开弹出窗口,因为我不喜欢窗口顶部角落的按钮,与 Android 一样,你必须滑动。所以我想知道是否有办法添加按钮并禁用当前的打开方式。
谢谢
我想根据主题(即浅色与深色)更改 xaml 中 ImageButton 的来源。我收到 System.NullReferenceException“未将对象引用设置为对象的实例。” 当我使用以下内容时:
<ImageButton
Grid.Row="1"
Margin="10"
Command="{Binding CreateCommand}"
Source="{AppThemeBinding Light=add_box_black_48dp.svg, Dark=add_box_light_48dp.svg}"
HorizontalOptions="End"
VerticalOptions="End"/>
Run Code Online (Sandbox Code Playgroud)
如果我将源更改为以下内容,一切正常
Source="add_box_white_48dp"
Run Code Online (Sandbox Code Playgroud)
我可以使用 AppThemeBinding 以这种方式更改 ImageButton 源吗?
<于 2022 年 6 月 4 日编辑,以显示有效案例和无效案例的 xaml。还更改了 svg 文件的名称以反映浅色和深色情况>
我正在使用 Visual Studio Community 2022(64 位)- 预览版 17.3.0 预览版 1.1
此 ImageButton xaml 引发异常:
<ImageButton
Margin="10"
Command="{Binding CreateNewAccountCommand}"
Source="{AppThemeBinding Light=add_light.svg, Dark=add_dark.svg}"
HorizontalOptions="End"
VerticalOptions="End"
BackgroundColor="#376489"
CornerRadius="8"
WidthRequest="36"
HeightRequest="36">
</ImageButton>
Run Code Online (Sandbox Code Playgroud)
此 ImageButton xaml 有效且不会引发异常
<ImageButton
Margin="10"
Command="{Binding CreateNewAccountCommand}"
Source="add_light.svg"
HorizontalOptions="End"
VerticalOptions="End"
BackgroundColor="#abdbe3"
CornerRadius="8"
WidthRequest="36"
HeightRequest="36">
</ImageButton>
Run Code Online (Sandbox Code Playgroud)
这也有效并且不会抛出异常 …