2026년 4월 24일 금요일

아발로니아 초기 스케폴딩

[아발로니아 설치]
dotnet new install Avalonia.Templates



[아발로니아 mvvm 프로젝트 만들기 현재폴더에]
dotnet new avalonia.mvvm -n 프로젝트이름 -o .


[타겟빌드가 닷넷 8.0 이라면]

*.cjproj 파일에서 아래의 부분을 net8.0 으로 변경
<TargetFramework>net8.0</TargetFramework>


이후 
dotnet clean
dotnet restore




[App.axaml.cs 파일 초기설정]

//
public partial class App : Application
{
    /// <summary>
    /// 초기화
    /// </summary>
    public override void Initialize()
    {
        AvaloniaXamlLoader.Load(this);
    }

    /// <summary>
    /// 프레임워크 초기화됨
    /// </summary>
    public override void OnFrameworkInitializationCompleted()
    {
        //초기화 처리
        OnLoad();
        
        //메인프레임 생성
        if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
        {
            desktop.Exit += OnExit;
            desktop.MainWindow = new MainWindow();
        }
        //
        base.OnFrameworkInitializationCompleted();
    }

    /// <summary>
    /// 초기화 구문
    /// </summary>
    public void OnLoad()
    {
    }

    /// <summary>
    /// 종료처리 = (Application.Current?.ApplicationLifetime as IClassicDesktopStyleApplicationLifetime).Shutdown(0); 
    /// </summary>
    public void OnExit(object? sender, EventArgs e)
    {
    }

}

댓글 없음:

댓글 쓰기