AvaloniaUI TemplateControl dll

안녕하세요, 기존에 WPF로 개발 하고 있다가 라즈베리파이에 프로그램을 개발해 올려야 할 일이 있어서 AvaloniaUI를 시도해 보고 있습니다.

  1. AvaloniaControls라는 프로젝트를 C# 클래스 라이브러리 프로젝트로 생성해 TemplateControl을 생성하고 dll로 빌드하고 싶습니다.
  2. AvaloniaApp 프로젝트에서 해당 dll을 참조 해서 사용하고 싶습니다.

GPT한테 물어봤을때는 dll 프로젝트에 TemplateContorl을 생성하고 Generic에 Merge한 뒤 App에서 dll을 참조해 사용하면 된다고 하는데 빌드는 되지만 UI에 표시되지 않는 문제가 있습니다.

▼ AvaloniaControls 프로젝트

▼ AvaloniaApp 프로젝트

이와 비슷한 경험 해보신 분 있으시면 답변 부탁드리겠습니다. 감사합니다.

1개의 좋아요

아발로니아는 잘 모르지만…
wpf 기준 제네릭 파일 위치가 themes 바로 밑으로 해야 되는거 아닌가요?

1개의 좋아요

themes 바로 밑 맞습니다 ㅎㅎ
Controls 폴더 안에 들어가있는거처럼 보이긴하네요 ㅋㅋ

image

1개의 좋아요

아 잘못봤습니다 ㅎㅎ

1개의 좋아요

Avalonia는 WPF 처럼 Generic.xaml 파일을 자동 로딩하는 개념이 없는것 같습니다.
쿨하게 수동으로 ㅎ

<Application xmlns="https://github.com/avaloniaui" ... >
    <Application.Styles>
        ...
        <StyleInclude Source="avares://AvaloniaControls/Themes/Generic.axaml"/>
    </Application.Styles>
</Application>

Templated Controls | Avalonia Docs

If you want to provide a Style for your TemplatedControl in a separate file, remember to include this file in your Application via StyleInclude.

6개의 좋아요

말씀해주신 내용으로 좀 찾아봤는데 수동으로 등록하면 쓸 수 있을거같더라구요
근데 avares에 dll로 참조한 AvaloniaControls가 안보이네요 ㅋㅋ
쉽지않군요 ㅠㅠ

4개의 좋아요