C#으로 만드는 UI
폼과 컨트롤을 C#으로 정의합니다. XAML 없이 이벤트와 UI 로직을 직접 다룰 수 있습니다.
저장소에 있는 실제 ControlGallery 스크린샷입니다. DataGridView 예제를 보여 주며, 버전과 테마에 따라 외관이 달라집니다.
기능
폼과 컨트롤을 C#으로 정의합니다. XAML 없이 이벤트와 UI 로직을 직접 다룰 수 있습니다.
자체 컨트롤 트리, 레이아웃 시스템과 입력 처리를 갖추고 있습니다. 프레임워크가 앱의 인터페이스를 직접 그립니다.
텍스트 입력, 목록, 표, 메뉴, 대화 상자와 컨테이너를 제공합니다. 데이터 바인딩으로 인터페이스와 앱 상태를 연결합니다.
테마 토큰, 리소스 상속과 실행 중 테마 변경을 지원합니다. 테마는 JSON으로 정의할 수 있습니다.
저장소 문서에 있는 실제 스크린샷 두 장입니다. ModernFormsNext 컨트롤로 구성한 서로 다른 레이아웃을 보여 줍니다.
시작하기
Windows와 .NET 10 SDK가 필요합니다. 템플릿을 설치하고 프로젝트를 만든 다음 앱을 실행하세요.
아래 명령은 버전 1.11.1을 명시적으로 사용합니다.
설치 안내dotnet new install ModernFormsNext.Templates::1.11.1
dotnet new mfn-app -n MyApp
cd MyApp
dotnet run
코드 예제
ModernFormsNext를 참조하는 Windows 앱의 전체 진입점 예제입니다.
템플릿으로 만든 프로젝트에서는 기존 진입점을 사용하거나 이 예제로 바꿀 수 있습니다.
using System.Drawing;
using ModernFormsNext;
internal static class Program
{
[STAThread]
private static void Main()
=> Application.Run(new MainForm());
}
public sealed class MainForm : Form
{
public MainForm()
{
Text = "Hello, ModernFormsNext";
Size = new Size(800, 600);
var button = new Button
{
Text = "Kliknij mnie",
Bounds = new Rectangle(24, 24, 160, 40)
};
button.Click += (_, _) => button.Text = "Działa!";
Controls.Add(button);
}
}
도구
ModernFormsNext 디자이너에서 폼과 사용자 컨트롤을 만들 수 있습니다. Visual Studio 통합은 VSIX 확장으로 제공합니다.
디자이너와 작업 흐름은 계속 개발 중입니다. 프레임워크 버전에 맞는 확장을 사용하세요.
릴리스와 VSIX 확장디자이너에서 컨트롤을 추가하고 속성을 설정한 뒤 레이아웃을 배치합니다.
문서에 인터페이스의 구조와 설정을 저장합니다.
생성기가 .Designer.cs 파일을 만듭니다. 앱 로직은 폼의 코드에 작성합니다.
개발 상태와 플랫폼
ModernFormsNext는 활발히 개발 중이며, 지원 범위는 플랫폼마다 다릅니다.
런타임과 디자이너를 제공하며, 주로 검증하는 환경입니다.
컨트롤과 Skia 그리기 표면을 공유합니다. 창 기능과 플랫폼 서비스는 아직 Windows와 동등하지 않습니다.
현재 이 플랫폼에서의 앱 실행은 지원하지 않습니다.