GNU/Linux >> Belajar Linux >  >> Linux

GUI lintas platform dengan open source .NET menggunakan Eto.Forms

Ini adalah salah satu dari "Tahukah Anda bahwa Anda bisa melakukan ITU? " Banyak orang telah mengetahui bahwa C#/F#/.NET adalah lintas platform dan open0source dan pada dasarnya berjalan pada sistem operasi apa pun. Orang-orang menggunakannya untuk membuat layanan mikro, situs web, dan webAPI di mana-mana. Belum lagi iPhone/Android aplikasi dengan Xamarin dan video game dengan Unity dan MonoGame.

Tetapi bagaimana dengan UI lintas platform?

Meskipun tidak didukung secara resmi oleh Microsoft - Anda dapat melakukan beberapa hal luar biasa...seperti cara kerja Open Source! Ingat bahwa ada keluarga .NET Runtimes sekarang, ada .NET Framework di Windows, ada xplat .NET Core, dan ada xplat Mono.

Eto.Forms telah dikembangkan sejak 2012 dan merupakan kerangka kerja lintas platform untuk membuat aplikasi GUI (Graphical User Interface, natch) dengan .NET yang berjalan di berbagai platform menggunakan toolkit asli mereka. Tidak seperti Java di tahun 90-an dengan tombol dicat khusus di atas kanvas.

Itu digunakan untuk hal-hal nyata! Faktanya, PabloDraw adalah editor teks Ansi/Ascii yang Anda tidak tahu Anda butuhkan dalam hidup Anda. Tapi memang begitu. Ini berjalan di Windows, Mac, dan Linux dan ditulis menggunakan Eto.Forms tetapi memiliki UI asli di setiap platform. Pastikan untuk memeriksa akun Twitter Curtis Wensley untuk beberapa contoh keren tentang apa yang dapat dilakukan PabloDraw dan Eto.Forms!

  • OS X:MonoMac atau Xamarin.Mac (dan juga iOS melalui Xamarin)
  • Linux:GTK# 2 atau 3
  • Windows:Windows Forms (menggunakan GDI atau Direct2D) atau WPF

Berikut adalah contoh Hello World. Perhatikan bahwa ini bukan hanya Code First, Anda juga dapat menggunakan Xaml, atau bahkan Json (.jeto) untuk mengatur tata letak formulir Anda!

using Eto.Forms;
using Eto.Drawing;

public class MyForm : Form
{
public MyForm ()
{
Title = "My Cross-Platform App";
ClientSize = new Size(200, 200);
Content = new Label { Text = "Hello World!" };
}

[STAThread]
static void Main()
{
new Application().Run(new MyForm());
}
}

Atau saya bisa File | Proyek Baru dengan Ekstensi Visual Studio mereka. Anda pasti harus mencobanya.

Bahkan pada platform yang sama (Windows dalam contoh di bawah) secara luar biasa Eto.Forms dapat menggunakan Kontrol Asli apa pun yang Anda inginkan. Berikut adalah contoh zip yang bagus yang memiliki aplikasi pengujian yang telah dikompilasi sebelumnya.

Setelah Anda menginstal versi baru Mono di Ubuntu, Anda dapat menjalankan sampel yang sama seperti Gtk3, seperti yang saya lakukan di sini di VM. LUAR BIASA.

Berikut beberapa contoh aplikasi yang ada di alam bebas, menggunakan Eto.Forms:

  • Alat Pipa MonoGame - Pengelola konten untuk MonoGame
  • Manajer - Perangkat Lunak Akuntansi
  • PabloDraw - Aplikasi menggambar berbasis karakter
  • JabbR.Desktop - klien JabbR
  • Notedown - Aplikasi pencatat
  • Eto.Test - Aplikasi untuk menguji fungsionalitas setiap widget
  • DotImaging.UI - Elemen UI portabel untuk DotImaging

Ada begitu banyak hal keren yang terjadi di .NET open source sekarang, dan Eto.Forms secara aktif mencari bantuan. Kunjungi Wiki mereka yang luar biasa, baca Tutorialnya, dan mungkin terlibat!

Sponsor: Dapatkan JetBrains Rider terbaru untuk men-debug kode .NET pihak ketiga, Smart Step Into, peningkatan debugger lainnya, C# Interactive, wizard proyek baru, dan kode pemformatan dalam kolom.


Linux
  1. Berbagi file sumber terbuka dengan alat Linux ini

  2. System76 memperkenalkan laptop dengan coreboot BIOS open source

  3. Pengusaha untuk meningkatkan perekrutan profesional TI dengan keterampilan open source

  1. Lakukan forensik memori Linux dengan alat sumber terbuka ini

  2. Kisah Linux saya:memecahkan hambatan bahasa dengan open source

  3. Veracrypt – Alat Enkripsi Disk Lintas Platform Sumber Terbuka

  1. Seni piksel 3D sumber terbuka dengan Goxel

  2. Mailspring – Klien Email Lintas-Platform Sumber Terbuka Baru

  3. Penanganan nama file lintas platform di .NET Core