1 Star 0 Fork 1

huangjunjiex/avalonia-dotnet-templates

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

downloads Current stable version

Avalonia Templates for dotnet new

For more information about dotnet new templates see here.

Installing the templates

Run from a command line (.NET 7+):

dotnet new install Avalonia.Templates

For .NET 6, the argument is --install:

dotnet new --install Avalonia.Templates

The templates should now be available in dotnet new list:

Template Name                        Short Name                 Language  Tags
-----------------------------------  -------------------------  --------  -----------------------------------------
Avalonia .NET App                    avalonia.app               [C#],F#   Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia .NET MVVM App               avalonia.mvvm              [C#],F#   Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia Cross Platform Application  avalonia.xplat             [C#],F#   Desktop/Xaml/Avalonia/Web/Mobile
Avalonia Resource Dictionary         avalonia.resource                    Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia Styles                      avalonia.styles                      Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia TemplatedControl            avalonia.templatedcontrol  [C#],F#   Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia UserControl                 avalonia.usercontrol       [C#],F#   Desktop/Xaml/Avalonia/Windows/Linux/macOS
Avalonia Window                      avalonia.window            [C#],F#   Desktop/Xaml/Avalonia/Windows/Linux/macOS

Note:

By default dotnet CLI would create a C# template,if you want to create F# template you will need to add -lang F# to the end of the command.

Creating a new Application

To create a new barebones application called MyApp in its own subdirectory, run:

dotnet new avalonia.app -o MyApp

Available parameters:

-f, --framework

Description: The target framework for the project.

Options: net6.0, net7.0, net8.0

By default: net8.0

-av, --avalonia-version

Description: The target version of Avalonia NuGet packages.

Options: 0.10.21, 11.0.6

By default: 11.0.6

-cb, --compiled-bindings

Description: Defines if CompiledBindings should be enabled by default in the project (only supported in 11.0 version and newer). See documentation for more details.

Options: true, false

By default: true

--no-restore

Description: If specified, skips the automatic restore of the project on create.

Creating a new MVVM Application

MVVM is the recommended pattern for creating Avalonia applications. The MVVM application template uses ReactiveUI to ease building applications with complex interactions.

To create a new MVVM application called MyApp in its own subdirectory, run:

dotnet new avalonia.mvvm -o MyApp

Available parameters:

-f, --framework

Description: The target framework for the project.

Options: net6.0, net7.0, net8.0

By default: net8.0

-av, --avalonia-version

Description: The target version of Avalonia NuGet packages.

Options: 0.10.21, 11.0.6

By default: 11.0.6

-cb, --compiled-bindings

Description: Defines if CompiledBindings should be enabled by default in the project (only supported in 11.0 version and newer). See documentation for more details.

Options: true, false

By default: true

-m, --mvvm

Description: MVVM toolkit to use in the template.

Options: ReactiveUI, CommunityToolkit

By default: ReactiveUI

-rvl, --remove-view-locator

Description: Defines if your app will use default ViewLocator made by Avalonia Team or you are planning to use a custom one. Removing ViewLocator may be useful in code trimming scenarios. Default ViewLocator is not trimming-friendly.

Options: true, false

By default: false

--no-restore

Description: If specified, skips the automatic restore of the project on create.

Creating a new Cross-Platform application

To create a new Cross-Platform application in its own subdirectory, run:

dotnet new avalonia.xplat 

Note: This type of template allows you to create an application that will work on Desktop, Browser and Mobile (iOS & Android). Only available with 11.0 preview versions.

Available parameters:

-cb, --compiled-bindings

Description: Defines if CompiledBindings should be enabled by default in the project. See documentation for more details.

Options: true, false

By default: true

-rvl, --remove-view-locator

Description: Defines if your app will use default ViewLocator made by Avalonia Team or you are planning to use a custom one. Removing ViewLocator may be useful in code trimming scenarios. Default ViewLocator is not trimming-friendly.

Options: true, false

By default: false

Creating a new Window

To create a new Window called MyNewWindow, in the namespace MyApp run:

dotnet new avalonia.window -na MyApp -n MyNewWindow

Creating a new UserControl

To create a new UserControl called MyNewView, in the namespace MyApp run:

dotnet new avalonia.usercontrol -na MyApp -n MyNewView

Creating a new Styles list

To create a new Styles list called MyStyles, run:

dotnet new avalonia.styles -n MyStyles

Creating a new ResourceDictionary

To create a new ResourceDictionary called MyResources, run:

dotnet new avalonia.resource -n MyResources
MIT License Copyright (c) 2023 .NET Foundation and Contributors All Rights Reserved Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

暂无描述 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/huangjunjiex/avalonia-dotnet-templates.git
git@gitee.com:huangjunjiex/avalonia-dotnet-templates.git
huangjunjiex
avalonia-dotnet-templates
avalonia-dotnet-templates
master

搜索帮助