.net 移动开发 MAUI
- 新建一个Hello World
- 运行效果
- 修改一下,做个加法运算吧
- 运行效果
- 创建新的内容页
- 修改xaml内容
- 添加逻辑内容
- 主页面添加一个按钮并且增加路由
- 按钮事件
- 添加路由
- 整体感受
- 第一:WPF
- 第二:小程序
- 所有的页面跳转都是借助路由
- 第三:WPF MVVM框架的基础
- 同系列文章推荐
新建一个Hello World
运行效果
修改一下,做个加法运算吧
运行效果
创建新的内容页
修改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="MauiApp1.PlusAlgorithm"
Title="PlusAlgorithm">
<VerticalStackLayout>
<Label
Text="Welcome to .NET MAUI!"
VerticalOptions="Center"
HorizontalOptions="Center" />
<HorizontalStackLayout>
<Entry Placeholder="输入数字" x:Name="Num1" Background="#AAA" />
<Label Text="+" />
<Entry Placeholder="输入数字" x:Name="Num2" />
<Label Text="=" />
<Label x:Name="NumR" Text="" />
</HorizontalStackLayout>
<Button Text="计算" Clicked="Calc" />
</VerticalStackLayout>
</ContentPage>
添加逻辑内容
namespace MauiApp1;
public partial class PlusAlgorithm : ContentPage
{
public PlusAlgorithm()
{
InitializeComponent();
}
private void Calc(object sender, EventArgs e)
{
NumR.Text = (decimal.Parse(Num1.Text) + decimal.Parse(Num2.Text)).ToString();
}
}
主页面添加一个按钮并且增加路由
按钮事件
private async void Button_Clicked(object sender, EventArgs e)
{
await Shell.Current.GoToAsync("///" + nameof(PlusAlgorithm));
}
添加路由
<?xml version="1.0" encoding="UTF-8" ?>
<Shell
x:Class="MauiApp1.AppShell"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:MauiApp1"
Shell.FlyoutBehavior="Disabled">
<ShellContent
Title="Home"
ContentTemplate="{DataTemplate local:MainPage}"
Route="MainPage" />
<ShellContent
Title="加法计算器"
ContentTemplate="{DataTemplate local:PlusAlgorithm}"
Route="PlusAlgorithm" />
</Shell>
整体感受
第一:WPF
如果有WPF开发经验,对于xaml语法相当熟悉,唯一的区别就是一些控件和属性的调整。
第二:小程序
整体开发的结构可以理解成小程序的方式
AppShell文件就相当于pages文件
所有的页面跳转都是借助路由
第三:WPF MVVM框架的基础
有MVVM框架基础,对当前结构理解起来就更容易一下,特别是cliburn
同系列文章推荐
.net开发安卓入门 - 环境安装
.net开发安卓入门 - Hello world!
.net开发安卓入门 - 基本交互(Button,输入EditText,TextView,Toast)
.net开发安卓入门 - 布局与样式
.net开发安卓入门 - Activity
.net开发安卓入门 - Notification(通知)
.net开发安卓入门 -记录两个问题处理办法
.net开发安卓入门 - Service