Visual Studio 2022 programında .NET MAUI kullanarak bir program oluşturmak için aşağıdaki adımları izleyebiliriz. Bu örnekte, iki boylam değerinini kullanıcıdan isteyeceğiz ve ardından saat farkını ekranda göstereceğiz.
Visual Studio 2022'yi açalım ve yeni bir proje oluşturalım.
Proje türü olarak .NET MAUI App seçelim.
Proje adını BoylamSaatGoster olarak belirleyelim. Projenin nereye kaydedileceğini belirleyelim.
Bir sonraki ekranda Framework belirleyelim. Ben 9.0 olarak bırakıyorum. Create diyerek projeyi oluşturalım.
Proje oluşturulduktan sonra, MainPage.xaml ve MainPage.xaml.cs dosyalarını kullanarak kullanıcı arabirimini ve mantığını oluşturacağız.
1. MainPage.xaml
MainPage.xaml dosyasındaki UI kısmını şu şekilde düzenleyelim:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MauiApp1.MainPage">
<VerticalStackLayout Padding="30" Spacing="25">
<Label Text="Boylam 1" FontSize="18"/>
<Entry x:Name="Longitude1Entry" Placeholder="Boylam 1 girin (örn. 30)" Keyboard="Numeric"/>
<Label Text="Boylam 2" FontSize="18"/>
<Entry x:Name="Longitude2Entry" Placeholder="Boylam 2 girin (örn. 45)" Keyboard="Numeric"/>
<Button Text="Saat Farkını Hesapla" Clicked="OnCalculateClicked"/>
<Label x:Name="ResultLabel" FontSize="20" TextColor="DarkBlue" HorizontalOptions="Center"/>
</VerticalStackLayout>
</ContentPage>
Burada, iki Entry alanı ile kullanıcıdan boylam değerlerini alıyoruz, bir Button ile kullanıcı tıklaması sağlıyoruz ve bir Label ile iki boylam arasındaki saat farkını ekranda gösteriyoruz.
2. MainPage.xaml.cs
MainPage.xaml.cs dosyasına gerekli olay işleyicisini ekleyelim. Bu olay, butona tıklanıldığında girilen boylamlara göre saat farkını etiketin içine yerleştirecek.
private void OnCalculateClicked(object sender, EventArgs e)
{
bool isParsed1 = double.TryParse(Longitude1Entry.Text, out double lon1);
bool isParsed2 = double.TryParse(Longitude2Entry.Text, out double lon2);
if (isParsed1 && isParsed2)
{
double difference = Math.Abs(lon1 - lon2);
double totalHours = difference / 15;
int totalMinutes = (int)Math.Round(totalHours * 60);
int hours = totalMinutes / 60;
int minutes = totalMinutes % 60;
if (hours > 0)
{
ResultLabel.Text = $"Saat farkı: {hours} saat {minutes} dakika.";
}
else
{
ResultLabel.Text = $"Saat farkı: {minutes} dakika.";
}
}
else
{
ResultLabel.Text = "Lütfen geçerli iki sayı girin.";
}
}
Bu kodda, OnCalculateClicked metodu butona tıklanıldığında çalışacak. Kullanıcıdan alınan boylam değerleri boş değilse, saat farkı görüntülenir. Eğer metin boşsa, kullanıcıya "Lütfen bir boylam girin!" mesajı gösterilir.
3. Projeyi Çalıştırma
Projenizi oluşturduktan sonra Visual Studio 2022'de projeyi çalıştırarak uygulamayı test edebilirsiniz.