.net-க்கான பல்தள winforms · திறந்த மூலம் · பீட்டா

WinForms உள்ளே. பல்தளமாக வெளியே.

Majorsilence.Forms என்பது .NET-க்கான பல்தள WinForms நூலகம் — பழைய மற்றும் நவீன WinForms பயன்பாடுகளை நவீன தொழில்நுட்பத் தொகுப்புக்கு (stack) நகர்த்தும் Windows Forms இணக்க அடுக்கு (compatibility layer). உங்களிடம் ஏற்கனவே உள்ள Formகள், கட்டுப்பாடுகள் (controls), நிகழ்வு கையாளிகள் (event handlers) மற்றும் *.Designer.cs கோப்புகளை அப்படியே வைத்துக்கொள்ளுங்கள் — ஒரே build-இலிருந்து Linux-இல் இயக்குங்கள், macOS-இல் இயக்குங்கள், Windows-இலும் இயக்குங்கள்; Avalonia-வின் சொந்த Android, iOS மற்றும் Browser இலக்குகள் மூலமாகவோ Uno Platform மூலமாகவோ மொபைலும் இணையமும் எட்டக்கூடிய தூரத்தில் உள்ளன. ஏழு ஹோஸ்ட் பின்தளங்கள் (host backends) ஒரே கட்டுப்பாட்டு மாதிரியைப் பகிர்ந்துகொள்கின்றன — Linux-இல் GTK 4 சாளரம், ஒரு terminal, மேலும் Windows பயன்பாடு ஒன்றை ஒரு நேரத்தில் ஒரு கட்டுப்பாடாக இடம்பெயர்த்த உதவும் WinForms மற்றும் WPF பாலங்கள் உட்பட.

Avalonia Uno Platform GTK 4 Terminal WinForms · WPF Headless SkiaSharp .NET 10
7
தளப் பின்தளங்கள்
Win · macOS · Linux
டெஸ்க்டாப், உடனடியாகத் தயார்
iOS · Android · Wasm
Avalonia அல்லது Uno வழியாக எட்டலாம்
MIT
திறந்த மூலம்
ஏன் majorsilence.forms

இடம்பெயர்த்தலைச் சுருக்குங்கள், உங்கள் codebase-ஐ அல்ல.

WinForms பயன்பாடு ஒன்றை இடம்பெயர்த்துவது என்றால் பொதுவாக XAML, MVVM, இணையம் போன்ற புதிய UI முறைமையில் அடியிலிருந்து மீண்டும் எழுதுவதே. அது செலவு மிக்கது, ஆபத்தானது, பல ஆண்டுகளாக வேலை செய்யும் வணிக தர்க்கத்தையும் UX-ஐயும் தூக்கி எறிகிறது. Majorsilence.Forms, WinForms API மேற்பரப்பைப் பிரதிபலித்து ஒரு இணக்க அடுக்கை வழங்குகிறது; எனவே ஏற்கனவே உள்ள உங்கள் படிவங்கள், கட்டுப்பாடுகள் மற்றும் குறியீடு மிகக் குறைந்த மாற்றங்களுடன் இடம்பெயர்கின்றன.

மீண்டும் பயன்படுத்துங்கள், மீண்டும் எழுதாதீர்கள்

WinForms-இல் நீங்கள் எழுதிய அதே கட்டுப்பாட்டு மாதிரியும் நிகழ்வு சார்ந்த குறியீடும். XAML இல்லை, கட்டாய MVVM மீள்எழுத்து இல்லை, framework-ஐ மீண்டும் கற்க வேண்டியதில்லை.

வடிவமைப்பிலேயே பல்தளம்

எல்லாமே SkiaSharp மூலம் வரையப்பட்டு, மாற்றக்கூடிய ஒரு ஹோஸ்ட் பின்தளத்தில் இயங்குகிறது — டெஸ்க்டாப்புக்கு இயல்பாக Avalonia; அதன் சொந்த Android/iOS/Browser இலக்குகள் மொபைலுக்கும் இணையத்துக்குமான ஒரு வழி, Uno Platform இன்னொரு வழி, மேலும் Linux-இல் உண்மையான GTK 4 சாளரம்.

ஒரு நேரத்தில் ஒரு கட்டுப்பாட்டை இடம்பெயர்த்துங்கள்

Windows-க்கு மட்டுமான WinForms மற்றும் WPF பின்தளங்கள், நீங்கள் ஏற்கனவே வெளியிடும் பயன்பாட்டினுள் Majorsilence.Forms கட்டுப்பாடுகளை ஹோஸ்ட் செய்கின்றன — ToWinFormsControl(), ToWpfElement() — .NET 10 அல்லது .NET Framework 4.8-இல். பகுதி பகுதியாக port செய்து, பின்னர் பின்தளத்தை மாற்றிப் பல்தளமாகுங்கள்.

CSS மூலம் தீம் அமையுங்கள்

முழுமையாக ஆவணப்படுத்தப்பட்ட ஒரு சிறிய CSS துணைத்தொகுப்பு ஒவ்வொரு நிறம் மற்றும் எழுத்துரு token-ஐயும் அமைத்து, கட்டுப்பாடுகளை வகை மற்றும் நிலை வாரியாக வடிவமைக்கிறது. Theme Studio-வில் நேரடியாகத் திருத்துங்கள்; கலப்புப் பயன்பாடு ஒன்றில் உண்மையான WinForms அல்லது native Avalonia கட்டுப்பாடுகளுக்கும் அதே stylesheet-ஐப் பயன்படுத்துங்கள்.

தேவைப்படும்போது MVVM

Majorsilence.Forms.Mvvm, reflection இல்லாமல் INotifyPropertyChanged மற்றும் ICommand-ஐக் கட்டுப்பாடுகளுடன் இணைக்கிறது — trim மற்றும் AOT-க்குப் பாதுகாப்பானது, CommunityToolkit.Mvvm-உடன் இணைந்து நன்றாக வேலை செய்கிறது. விருப்பத்தின் பேரில் மட்டும்; ஒருபோதும் கட்டாயமில்லை.

உள்ளே நவீனமானது

GPU-வால் துரிதப்படுத்தப்பட்ட Skia வரைதல் (rendering), HiDPI, தொடு சைகைகள், animation frames, தற்போதைய .NET — மேலும் ஒவ்வொரு தளத்திலும் பாதுகாப்பான சேமிப்பு, உரையிலிருந்து பேச்சு (text to speech), இணைப்புகளைத் திறத்தல் ஆகியவற்றுக்கான Majorsilence.Forms.Essentials.

சோதிக்கக்கூடியது, அணுகக்கூடியது

ஒரே தானியக்க மரம் (automation tree), process-இனுள் இயங்கும் UI சோதனைகள், Selenium-க்கான W3C WebDriver server, AI உதவியாளர்களுக்கான MCP server, Windows திரை வாசிப்பான்கள், உலாவியில் ARIA DOM பிரதிபலிப்பு ஆகிய அனைத்தையும் இயக்குகிறது.

எங்கும் async உரையாடல் சாளரங்கள்

ஒவ்வொரு modal-க்கும் ஒரு async இணை உண்டு — ShowDialogAsync, MessageBox.ShowAsync — எனவே blocking loop சாத்தியமில்லாத உலாவியிலும் தொலைபேசிகளிலும் அதே குறியீடு இயங்குகிறது. உடன் வரும் analyzer ஒன்று, நீங்கள் வெளியிடுவதற்கு முன்பே blocking அழைப்புகளைச் சுட்டிக்காட்டுகிறது.

இது எப்படி வேலை செய்கிறது

ஒரே கட்டுப்பாட்டு மாதிரி, அடியில் மாற்றக்கூடிய ஹோஸ்ட்.

கட்டுப்பாடுகளும் வரைதலும் Majorsilence.Forms-க்குச் சொந்தமானவை; பின்தளம் திரையில் பிக்சல்களை வைத்து உள்ளீட்டை வழங்குவது மட்டுமே. அந்த இணைப்புக்கோடுதான் (seam) அதே பயன்பாட்டை இன்று Avalonia-வையும் நாளை Uno-வையும் இலக்காகக் கொள்ள — அல்லது ஒரு terminal-இனுள் மாற்றமின்றி இயங்க — அனுமதிக்கிறது. Core, net8.0, net10.0 மற்றும் netstandard2.0 ஆகியவற்றை multi-target செய்கிறது; .NET Framework 4.8 பயன்பாடு ஒன்றும் இதை ஹோஸ்ட் செய்யும் வகையில் WinForms மற்றும் WPF பின்தளங்கள் net48-ஐச் சேர்க்கின்றன.

உங்கள் பயன்பாடு (Forms, கட்டுப்பாடுகள், Designer கோப்புகள் — உங்களுக்குத் தெரிந்த WinForms மாதிரி) │ Majorsilence.Forms (கட்டுப்பாடுகள் + WinForms-இணக்க API, SkiaSharp மூலம் வரையப்படுகிறது) │ மாற்றக்கூடிய ஹோஸ்ட் பின்தளம் ├─ Avalonia → Windows · macOS · Linux (இயல்புநிலை) · மேலும் Android · iOS · Browser ├─ Uno → டெஸ்க்டாப் · iOS · Android · WebAssembly ├─ GTK 4 → Linux-முதன்மை உண்மையான GTK சாளரம் (gir.core), GTK runtime உடன் Windows/macOS-இலும் ├─ Terminal → படிவம் terminal-ஐ நிரப்புகிறது: Kitty graphics, Sixel, அல்லது Unicode block elements ├─ WinForms → Windows-க்கு மட்டுமான இடம்பெயர்த்தல் பாலம்: ஏற்கனவே உள்ள WinForms பயன்பாட்டில் உட்பொதித்து, படிப்படியாக port செய்யுங்கள் ├─ WPF → Windows-க்கு மட்டுமான இடம்பெயர்த்தல் பாலம், அதே வடிவம், WPF பயன்பாடுகளுக்கு └─ Headless → சோதனைகள் / CI-க்கான திரைக்கு வெளியே வரைதல்
ஒரு படிவம் நீங்கள் எதிர்பார்ப்பது போலவே இருக்கும்

Program.cs, மாற்றமின்றி.

MainForm.cs
using Majorsilence.Forms;

public class MainForm : Form
{
}
Program.cs run
static void Main (string [] args)
{
    Application.Run (new MainForm ());
}
மாதிரிகள்

உண்மையான பயன்பாடுகள், விளையாட்டு demo-க்கள் அல்ல.

Repository-யில் உள்ள ஒவ்வொரு மாதிரியையும் ஆராயுங்கள் — Windows Explorer நகல், Outlook நகல், சொந்த API மற்றும் தரவுத்தளத்துடன் கூடிய client/server விற்பனை முனைய (point-of-sale) பயன்பாடு, டெஸ்க்டாப், Uno, GTK 4, உலாவி, Android, iOS, WPF மற்றும் terminal-இல் இயங்கும் அதே முழுக் கட்டுப்பாட்டுக் காட்சியகம், நேரடியாக இயங்கும் CSS Theme Studio, இருதிசை WinForms interop, மற்றும் ஹோஸ்ட் Avalonia, Uno, GTK 4, WinForms பயன்பாடுகளினுள் உட்பொதிக்கப்பட்ட Majorsilence.Forms.

இங்கிருந்து தொடங்குங்கள்

உங்களை இங்கே கொண்டுவந்த கேள்விக்கான பதில்.

பெரும்பாலானோர் ஒரு குறிப்பிட்ட விடயத்தைத் தேடியே வருகிறார்கள் — Windows Forms Linux-இல் இயங்குமா, WinForms இணக்க அடுக்கு ஒன்றின் உண்மையான விலை என்ன, அல்லது MAUI அல்லது Avalonia-வில் மீண்டும் எழுதுவதுடன் இது எப்படி ஒப்பிடப்படுகிறது. அவை ஒவ்வொன்றுக்கும் தனிப் பக்கம் உண்டு.

பல்தள WinForms, விளக்கம்

System.Windows.Forms ஏன் Windows-க்கு மட்டுமானது, அதைக் கடந்து செல்லும் மூன்று வழிகள், API-இணக்கமான மறுசெயலாக்கம் (reimplementation) எதை விட்டுக்கொடுக்கிறது.

WinForms Linux-இல் இயங்குமா?

உள்ளபடியே இயங்காது — Mono-வின் port நீண்ட காலத்துக்கு முன்பே போய்விட்டது, GDI+ அங்கு இல்லை. அதற்குப் பதிலாக Ubuntu, Fedora, Debian-இல் எது வேலை செய்கிறது, அதை எப்படி வெளியிடுவது.

WinForms macOS-இல் இயங்குமா?

Apple Silicon மற்றும் Intel-இல் native NSWindow, அதில் Mac-க்கு இயல்பற்றதாகத் தோன்றுபவை, மற்றும் .app ஒன்றை package செய்தல்.

ஏற்கனவே உள்ள பயன்பாட்டை இடம்பெயர்த்தல்

majorsilence-migrate CLI இயந்திரத்தனமான மீள்எழுத்தை — namespaces, திட்டக் கோப்புகள், resources — படிக்கக்கூடிய git diff ஆகச் செய்கிறது.

WinForms மாற்றுகள் ஒப்பீடு

MAUI, Avalonia, Uno Platform, Eto.Forms, WPF மற்றும் Wine — ஒவ்வொன்றும் உங்கள் தற்போதைய குறியீட்டில் எவ்வளவைத் தக்கவைக்கிறது என்பதன் அடிப்படையில் அளவிடப்பட்டவை.

அடிக்கடி கேட்கப்படும் கேள்விகள்

Designer கோப்புகள் இன்னும் வேலை செய்யுமா? Visual designer உள்ளதா? VB.NET, DataGridView, System.Drawing, மற்றும் production-க்கான தயார்நிலை பற்றி என்ன?

வலைப்பதிவிலிருந்து

சமீபத்திய புதுப்பிப்புகள்

அக்டோபர் 8, 2026 · 7 நிமிட வாசிப்பு

ஆகஸ்ட் முதல் வந்தவை: 26.9.0, நான்கு புதிய பின்தளங்கள், CSS தீம்கள், மற்றும் நடத்தை தணிக்கை

ஏழு வாரங்கள், 557 commits: GTK 4, Terminal, WinForms மற்றும் WPF ஹோஸ்ட்கள், .NET Framework 4.8 ஆதரவு, CSS தீம்கள், mobile மற்றும் browser இல் async-மட்டும் உரையாடல் சாளரங்கள், ம...

பதிவைப் படிக்கவும் →
ஜூலை 21, 2026 · 4 நிமிட வாசிப்பு

Majorsilence.Forms அறிமுகம்

பழைய மற்றும் நவீன WinForms பயன்பாடுகளை மீண்டும் எழுதாமலேயே பல்தள (cross-platform) அடுக்குக்குக் கொண்டுசெல்வதற்கான WinForms பாணி UI கட்டமைப்பு.

பதிவைப் படிக்கவும் →
ஜூலை 21, 2026 · 5 நிமிட வாசிப்பு

Platform பின்தளங்கள்: Avalonia, Uno மற்றும் Headless

Majorsilence.Forms ஒவ்வொரு கட்டுப்பாட்டையும் SkiaSharp மூலம் தானே வரைகிறது — அடியில் உள்ள windowing toolkit ஒரு ஹோஸ்ட் மட்டுமே. இணைப்புக்கோடு (seam) எவ்வாறு செயல்படுகிறது என்பது...

பதிவைப் படிக்கவும் →