fajiao
2 years ago
11 changed files with 179 additions and 0 deletions
@ -0,0 +1,10 @@ |
|||||
|
<Application xmlns="https://github.com/avaloniaui" |
||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
||||
|
x:Class="JiLinApp.App" |
||||
|
RequestedThemeVariant="Default"> |
||||
|
<!-- "Default" ThemeVariant follows system theme variant. "Dark" or "Light" are other available options. --> |
||||
|
|
||||
|
<Application.Styles> |
||||
|
<FluentTheme /> |
||||
|
</Application.Styles> |
||||
|
</Application> |
@ -0,0 +1,29 @@ |
|||||
|
using Avalonia; |
||||
|
using Avalonia.Controls.ApplicationLifetimes; |
||||
|
using Avalonia.Markup.Xaml; |
||||
|
using JiLinApp.ViewModels; |
||||
|
using JiLinApp.Views; |
||||
|
|
||||
|
namespace JiLinApp |
||||
|
{ |
||||
|
public partial class App : Application |
||||
|
{ |
||||
|
public override void Initialize() |
||||
|
{ |
||||
|
AvaloniaXamlLoader.Load(this); |
||||
|
} |
||||
|
|
||||
|
public override void OnFrameworkInitializationCompleted() |
||||
|
{ |
||||
|
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) |
||||
|
{ |
||||
|
desktop.MainWindow = new MainWindow |
||||
|
{ |
||||
|
DataContext = new MainWindowViewModel(), |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
base.OnFrameworkInitializationCompleted(); |
||||
|
} |
||||
|
} |
||||
|
} |
After Width: | Height: | Size: 172 KiB |
@ -0,0 +1,26 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk"> |
||||
|
<PropertyGroup> |
||||
|
<OutputType>WinExe</OutputType> |
||||
|
<TargetFramework>net7.0</TargetFramework> |
||||
|
<Nullable>enable</Nullable> |
||||
|
<BuiltInComInteropSupport>true</BuiltInComInteropSupport> |
||||
|
<ApplicationManifest>app.manifest</ApplicationManifest> |
||||
|
<AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<Folder Include="Models\" /> |
||||
|
<AvaloniaResource Include="Assets\**" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
|
||||
|
<ItemGroup> |
||||
|
<PackageReference Include="Avalonia" Version="11.0.0-preview8" /> |
||||
|
<PackageReference Include="Avalonia.Desktop" Version="11.0.0-preview8" /> |
||||
|
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.0-preview8" /> |
||||
|
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.0.0-preview8" /> |
||||
|
<!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.--> |
||||
|
<PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="11.0.0-preview8" /> |
||||
|
<PackageReference Include="Avalonia.ReactiveUI" Version="11.0.0-preview8" /> |
||||
|
</ItemGroup> |
||||
|
</Project> |
@ -0,0 +1,24 @@ |
|||||
|
using Avalonia; |
||||
|
using Avalonia.ReactiveUI; |
||||
|
using System; |
||||
|
|
||||
|
namespace JiLinApp |
||||
|
{ |
||||
|
internal class Program |
||||
|
{ |
||||
|
// Initialization code. Don't use any Avalonia, third-party APIs or any
|
||||
|
// SynchronizationContext-reliant code before AppMain is called: things aren't initialized
|
||||
|
// yet and stuff might break.
|
||||
|
[STAThread] |
||||
|
public static void Main(string[] args) => BuildAvaloniaApp() |
||||
|
.StartWithClassicDesktopLifetime(args); |
||||
|
|
||||
|
// Avalonia configuration, don't remove; also used by visual designer.
|
||||
|
public static AppBuilder BuildAvaloniaApp() |
||||
|
=> AppBuilder.Configure<App>() |
||||
|
.UsePlatformDetect() |
||||
|
.WithInterFont() |
||||
|
.LogToTrace() |
||||
|
.UseReactiveUI(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
namespace JiLinApp.ViewModels |
||||
|
{ |
||||
|
public class MainWindowViewModel : ViewModelBase |
||||
|
{ |
||||
|
public string Greeting => "Welcome to Avalonia!"; |
||||
|
} |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
using ReactiveUI; |
||||
|
|
||||
|
namespace JiLinApp.ViewModels |
||||
|
{ |
||||
|
public class ViewModelBase : ReactiveObject |
||||
|
{ |
||||
|
} |
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
<Window xmlns="https://github.com/avaloniaui" |
||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
||||
|
xmlns:vm="using:JiLinApp.ViewModels" |
||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
||||
|
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450" |
||||
|
x:Class="JiLinApp.Views.MainWindow" |
||||
|
x:DataType="vm:MainWindowViewModel" |
||||
|
Icon="/Assets/avalonia-logo.ico" |
||||
|
Title="JiLinApp"> |
||||
|
|
||||
|
<Design.DataContext> |
||||
|
<!-- This only sets the DataContext for the previewer in an IDE, |
||||
|
to set the actual DataContext for runtime, set the DataContext property in code (look at App.axaml.cs) --> |
||||
|
<vm:MainWindowViewModel/> |
||||
|
</Design.DataContext> |
||||
|
|
||||
|
<TextBlock Text="{Binding Greeting}" HorizontalAlignment="Center" VerticalAlignment="Center"/> |
||||
|
|
||||
|
</Window> |
@ -0,0 +1,12 @@ |
|||||
|
using Avalonia.Controls; |
||||
|
|
||||
|
namespace JiLinApp.Views |
||||
|
{ |
||||
|
public partial class MainWindow : Window |
||||
|
{ |
||||
|
public MainWindow() |
||||
|
{ |
||||
|
InitializeComponent(); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
<?xml version="1.0" encoding="utf-8"?> |
||||
|
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"> |
||||
|
<!-- This manifest is used on Windows only. |
||||
|
Don't remove it as it might cause problems with window transparency and embeded controls. |
||||
|
For more details visit https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests --> |
||||
|
<assemblyIdentity version="1.0.0.0" name="AvaloniaTest.Desktop"/> |
||||
|
|
||||
|
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> |
||||
|
<application> |
||||
|
<!-- A list of the Windows versions that this application has been tested on |
||||
|
and is designed to work with. Uncomment the appropriate elements |
||||
|
and Windows will automatically select the most compatible environment. --> |
||||
|
|
||||
|
<!-- Windows 10 --> |
||||
|
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" /> |
||||
|
</application> |
||||
|
</compatibility> |
||||
|
</assembly> |
@ -0,0 +1,25 @@ |
|||||
|
|
||||
|
Microsoft Visual Studio Solution File, Format Version 12.00 |
||||
|
# Visual Studio Version 17 |
||||
|
VisualStudioVersion = 17.4.33205.214 |
||||
|
MinimumVisualStudioVersion = 10.0.40219.1 |
||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JiLinApp", "JiLinApp\JiLinApp.csproj", "{9D1063BD-2C84-4FF3-90CF-B16159B3E803}" |
||||
|
EndProject |
||||
|
Global |
||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
||||
|
Debug|Any CPU = Debug|Any CPU |
||||
|
Release|Any CPU = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
||||
|
{9D1063BD-2C84-4FF3-90CF-B16159B3E803}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{9D1063BD-2C84-4FF3-90CF-B16159B3E803}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{9D1063BD-2C84-4FF3-90CF-B16159B3E803}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{9D1063BD-2C84-4FF3-90CF-B16159B3E803}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(SolutionProperties) = preSolution |
||||
|
HideSolutionNode = FALSE |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ExtensibilityGlobals) = postSolution |
||||
|
SolutionGuid = {C15FCDEE-B742-4744-AC28-9070AD8A2C1F} |
||||
|
EndGlobalSection |
||||
|
EndGlobal |
Loading…
Reference in new issue