Представляем Предварительную Версию .Net Maui 12

Сегодня мы выпускаем 12-ю предварительную версию Пользовательский интерфейс многоплатформенного приложения .

NET со многими улучшениями качества и некоторыми новыми функциями.

По мере приближения к выпуску нашей первой стабильной версии баланс работы начинает смещаться в сторону улучшения качества и стабильности, хотя есть еще несколько интересных новых функций, на которые стоит обратить внимание, в том числе:

  • Новая документация по значкам приложений, жизненному циклу приложения, кистям, элементам управления и отдельному проекту
  • Обработчик FlyoutView реализован на Android
  • Добавлены обработчики совместимости для RelativeLayout и AbsoluteLayout.
  • Добавлено свойство Z-индекс.

  • Унификация .

    NET 6 — типы iOS

  • Расширенная панель инструментов Windows — без оболочки


Представляем предварительную версию .
</p><p>
NET MAUI 12

В этом выпуске также представлены интересные улучшения.

Оболочка .

Давайте поближе взглянем на Shell в Preview 12.

Навигация в .

NET MAUI: фокус оболочки

Shell — это шаблон приложения, который упрощает общий дизайн приложений, использующих всплывающие меню и вкладки.

В вашей оболочке, обычно называемой в наших примерах AppShell, вы начинаете добавлять страницы в приложение и располагать их в желаемой структуре навигации.

Вот пример приложения .

NET-подкаст :

  
  
  
  
  
   

<Shell xmlns=" http://schemas.microsoft.com/dotnet/2021/maui " xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml " xmlns:pages="clr-namespace:Microsoft.NetConf2021.Maui.Pages " xmlns:root="clr-namespace:Microsoft.NetConf2021.Maui " xmlns:viewmodels="clr-namespace:Microsoft.NetConf2021.Maui.ViewModels " x:DataType=" viewmodels:ShellViewModel " x:Class="Microsoft.NetConf2021.Maui.Pages.MobileShell"> <TabBar> <Tab Title="{Привязка Discover.Title}" Icon="{Binding Discover.Icon}"> <ShellContent ContentTemplate="{DataTemplate pages:DiscoverPage }" /> </Tab> <Tab Title="{Привязка подписок.

Название}" Icon="{Binding Subscriptions.Icon}"> <ShellContent ContentTemplate="{DataTemplate pages:SubscriptionsPage }" /> </Tab> <Tab Title="{Привязка ListenLater.Title}" Icon="{Binding ListenLater.Icon}"> <ShellContent ContentTemplate="{DataTemplate pages:ListenLaterPage }" /> </Tab> <Tab Title="{Привязка ListenTogether.Title}" Icon="{Binding ListenTogether.Icon}" IsVisible="{x:Static root:Config.ListenTogetherIsVisible }"> <ShellContent ContentTemplate="{DataTemplate pages:ListenTogetherPage }" /> </Tab> <Tab Title="{Настройки привязки.

Название}" Icon="{Binding Settings.Icon}"> <ShellContent ContentTemplate="{DataTemplate pages:SettingsPage }" /> </Tab> </TabBar> </Shell>



Представляем предварительную версию .
</p><p>
NET MAUI 12

Навигация внутри контекста оболочки осуществляется с помощью маршрутизации на основе URI. На центральном изображении снимка экрана мы перешли к подробному представлению, которого нет в приведенном выше XAML. Для страниц, которые вы не хотите видеть, вы можете объявить для них маршруты в коде, а затем перейти к ним по URI. Вы можете увидеть это еще раз в коде приложения подкаста «App.xaml.cs»:

Routing.RegisterRoute(nameof(DiscoverPage), typeof(DiscoverPage)); Routing.RegisterRoute(nameof(ShowDetailPage), typeof(ShowDetailPage)); Routing.RegisterRoute(nameof(EpisodeDetailPage), typeof(EpisodeDetailPage)); Routing.RegisterRoute(nameof(CategoriesPage), typeof(CategoriesPage)); Routing.RegisterRoute(nameof(CategoryPage), typeof(CategoryPage));

Чтобы перейти с главного экрана на просмотр подробностей, когда пользователь касается изображения обложки, приложение запускает команду в контексте привязки ShowViewModel:

private Task NavigateToDetailCommandExecute() { return Shell.Current.GoToAsync($"{nameof(ShowDetailPage)}ЭId={Show.Id}"); }

Из любого места кода приложения вы можете получить доступ к Shell.Current для выполнения команд навигации, прослушивания событий навигации и многого другого.

Он также демонстрирует одну из мощных функций навигации Shell: параметры запроса для передачи простых данных.

В этом случае «Show.Id» передается вместе с маршрутом, а затем Shell применяет это значение к контексту привязки ShowDetailPage, делая его немедленно готовым к использованию.

«QueryProperty» обрабатывает сопоставление параметра строки запроса с общедоступным свойством.



[QueryProperty(nameof(Id), nameof(Id))] public class ShowDetailViewModel : BaseViewModel { public string Id { get; set; } }



Обертка и внедрение зависимостей

Использование HostBuilder в .

NET MAUI и мощное внедрение зависимостей было изюминкой предварительных выпусков.

Одним из самых популярных комментариев, которые мы получили о Shell, является желание использовать внедрение конструктора, и в этом выпуске, благодаря усилиям участников Брайан Рэнк теперь вы можете использовать его! Определите свои зависимости в контейнере DI, обычно «MauiProgram.cs»:

public static class MauiProgram { public static MauiApp CreateMauiApp() { var builder = MauiApp.CreateBuilder(); builder .

UseMauiApp<App>(); builder.Services .

AddSingleton<MainViewModel>(); return builder.Build(); } }

Затем на странице, куда нужно ввести:

public partial class MainPage { readonly MainViewModel _viewModel; public MainPage(MainViewModel viewModel) { InitializeComponent(); BindingContext = _viewModel = viewModel; } }

Shell предлагает множество вариантов стилей и шаблонов, что позволяет быстро удовлетворить самые распространенные потребности.

Для более подробной информации проверьте Документация оболочки .



Начните сегодня!

Перед установкой Visual Studio 2022 Preview мы настоятельно рекомендуем начать с чистого листа, удалив все Предварительный просмотр .

NET 6 И Визуальная Студия 2022 .

Теперь установите предварительную версию Visual Studio 2022 (17.1 Preview 3) и убедитесь, что в разделе «Разработка мобильных устройств с рабочей нагрузкой .

NET» установлен флажок .

NET MAUI (предварительная версия).

Готовый? Откройте Visual Studio 2022 и создайте новый проект. Найдите и выберите .

NET MAUI. Предварительная версия 12 примечаний к выпуску находится по адресу GitHub .

Дополнительную информацию о начале работы с .

NET MAUI см.

в нашей статье.

документация .

Теги: #microsoft #C++ #.

NET #интерфейсы #Visual Studio #maui #.

net maui

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.