Membuat Aplikasi WPF Tanpa XAML

Saat kita create aplikasi wpf, secara otomatis akan muncul file-file XAML.  Dia menjadi rumah bagi User Interface aplikasi berbasis wpf.  Nah saat libur akhir pekan kemarin, saya membaca artikel bahwa bisa dibuat aplikasi wpf tanpa ngikutin file-file XAML.

Hmmm sesuatu yang menarik :)

Berikut adalah contoh membuat aplikasi WPF tanpa XAML :

using System;
using System.Windows;
using System.Windows.Controls;
namespace NonXAMLWPFApp
{
  class NonXAMLWPFApp : Application
  {
    [STAThread]
    static void Main()
    {
      NonXAMLWPFApp app = new NonXAMLWPFApp();
      app.Startup += AppStartUp;
      app.Exit += AppExit;
      app.Run();  
    }
    static void AppExit(object sender, ExitEventArgs e)
    {
          MessageBox.Show("Halo Geeks");
    }
    static void AppStartUp(object sender, StartupEventArgs e)
      {
        Window mainWindow = new Window();
        mainWindow.Title = "WPF Without XAML App!";
        mainWindow.Height = 200;
        mainWindow.Width = 300;
        mainWindow.WindowStartupLocation = WindowStartupLocation.CenterScreen;
        mainWindow.Show();
      }
   }
}

Aplikasi ini hanya menjalankan sebuah windows form dengan tittle "WPF Without XAML App!" dan menampilkan messagebox saat close dengan tulisan "Halo Geeks"

Kemudian kita masukin referensi assembly dari WPF :

WindowsBase.dll
PresentationCore.dll
PresentationFramework.dll

Selanjutnya, silahkan compile dengan command prompt yang ada di tools Visual Studio Anda :

 

cmd2

cmd1

langsung dari command prompt c:\>csc namafile.cs /r:WindowsBase.dll,PresentationCore.dll,PresentationFramework.dll

Atau lebih enak menggunakan C# respon file.

Caranya, buat file : dengan ekstension rsp (cukup menggunakan notepad)

/target:winexe
/out:NonXAMLWPF.exe
/r:WindowsBase.dll
/r:PresentationCore.dll
/r:PresentationFramework.dll
*.cs

Kemudian compile dengan perintah :

c:\>csc @namafile.rsp

Bisa juga sih kita compile via commannd prompt nya Windows, namun terlalu ribet untuk path dari file-file referensi yang digunakan.

Source code ?

 

Silahkan Unduh :)

Semoga kompilasi berhasil :)

Share this post: | | | |
Published Monday, October 27, 2008 9:38 AM by Lutfie Royan

Comments

No Comments
Powered by Community Server (Commercial Edition), by Telligent Systems