MahApps.Metro, WPF uygulamalarına modern, Metro stilinde tasarım ve bileşenler ekleyen açık kaynaklı bir UI kütüphanesidir.
MahApps.Metro
Geliştirici: MahApps (Open Source Topluluğu) • 4 Görüntülenme
İndirme Seçenekleri ve İşletim Sistemleri
⚖️ Editör Değerlendirmesi: Artı ve Eksi Yönler
✓ Öne Çıkan Artıları
- • Zengin ve özelleştirilebilir Metro temalı bileşen seti
- • NuGet üzerinden kolay kurulum ve sürüm yönetimi
- • Aktif topluluk desteği ve düzenli güncellemeler
- • Dokümantasyon ve örnek projelerle hızlı öğrenme
- • Tema ve stil değişiklikleri için güçlü kaynak şablonları
- • Animasyon ve geçiş efektleri ile kullanıcı deneyimini artırır
✕ Eksileri / Geliştirilebilir
- • Sadece Windows (WPF) platformunda çalışır, çapraz platform desteği yok
- • Bazı bileşenlerde performans sorunları yaşanabilir, özellikle büyük veri setlerinde
Program İncelemesi ve Kullanım Kılavuzu
MahApps.Metro Nedir ve Ne İşe Yarar?
MahApps.Metro, Microsoft'un Windows 8/10 Metro UI tasarım diline uygun, WPF (Windows Presentation Foundation) uygulamaları için tasarlanmış açık kaynaklı bir UI kütüphanesidir. Kütüphane, standart WPF kontrol setini Metro temasına dönüştürür ve geliştiricilere modern, temiz ve kullanıcı dostu arayüzler oluşturma imkanı sunar. Proje, .NET Framework 4.5 ve üstü, .NET Core 3.1+ ile uyumludur.
Öne Çıkan Başlıca Özellikleri
- Metro Temalı Kontroller: Button, TextBox, ComboBox, ListView, DataGrid gibi temel kontrollerin Metro stilinde sürümleri.
- Dinamik Tema Değiştirme: Kullanıcı arayüzünü canlı olarak kırmızı, mavi, yeşil gibi renk şemalarıyla değiştirme.
- Animasyon ve Geçiş Efektleri: Pencere açma/kapama, menü geçişleri ve bileşen animasyonları ile zengin görsel deneyim.
- Responsive Layout: Grid, DockPanel ve StackPanel gibi düzenleri kolayca uyumlu hale getiren yardımcı sınıflar.
- Geniş Özelleştirilebilirlik: XAML kaynak şablonları, stil ve tema dosyaları ile tam kontrol.
- Topluluk Desteği: GitHub üzerinden aktif katkı, düzenli güncellemeler ve kapsamlı örnek projeler.
Kimler İçin Uygundur?
MahApps.Metro, özellikle aşağıdaki senaryolarda tercih edilir:
- WPF tabanlı masaüstü uygulamaları geliştiren .NET geliştiricileri.
- Modern, temiz ve kullanıcı odaklı arayüzler isteyen start-up ve kurumsal projeler.
- Temel WPF kontrollerini hızlıca Metro stiline dönüştürmek isteyen ekipler.
- Özelleştirilebilir temalarla farklı renk paletleri sunmak isteyen UI tasarımcıları.
Nasıl Kurulur ve Kullanılır?
Kurulum, NuGet paket yöneticisi üzerinden yapılır. Visual Studio’da “NuGet Package Manager Console” açın ve aşağıdaki komutu çalıştırın:
Install-Package MahApps.Metro
Alternatif olarak, NuGet Package Manager GUI üzerinden “MahApps.Metro” paketini aratıp yükleyebilirsiniz. Kurulumdan sonra, uygulamanızın App.xaml dosyasına aşağıdaki namespace’leri ekleyin:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
<ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>Bu adımlar, temel Metro teması ve aksan renklerini projenize ekler. Daha sonra, MetroWindow sınıfını kullanarak pencere başlığını ve stilini Metro ile uyumlu hale getirebilirsiniz:
<mah:MetroWindow x:Class="MyApp.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
Title="Ana Pencere" Height="350" Width="525">
<Grid>
<Button Content="Merhaba" Width="100" Height="30" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</mah:MetroWindow>İleri düzey özelleştirme için Styles ve Accents klasörlerinde bulunan XAML dosyalarını inceleyebilir, kendi renk paletlerinizi oluşturabilirsiniz.