Örnek 1:
Butona tıklayınca MessageBox ile mesaj gösteren C# Windows Forms uygulaması nasıl yapılır?

- Adım: Form üzerine görselde görüldüğü gibi bir tane Button nesnesi ekleyiniz.
- Adım: Özellikler penceresinden formun Text özelliğini “Yeni Proje” yapınız.
- Adım: Özellikler listesinden button1’in Text özelliğini “GÖNDER” yapınız.
- Adım: Olaylar listesinden button1 için Click olayı metodunu button1’in üzerine çift tıklayarak oluşturunuz.
- Adım: Oluşturduğunuz metodun içine MessageBox.Show (“Mesaj Gönderildi”); kodunu yazınız.
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("Mesaj Gönderildi");
}
Örnek 2:
C# Windows Forms’ta butona tıklanınca TextBox içine metin yazdırma nasıl yapılır?

private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "Merhaba Dünya";
}
Örnek 3:
C# Windows Forms ile 0-9 arasında çalışan tuş takımı (numeric keypad) nasıl oluşturulur?

- Adım: Form üzerine Görsel 1.22’de görüldüğü gibi iki tane GroupBox nesnesi ekleyiniz.
- Adım: Üst tarafta bulunan GroupBox nesnesinin içine bir tane Label nesnesi ekleyiniz.
- Adım: Alt tarafta bulunan GroupBox nesnesinin içine on tane Button nesnesi ekleyiniz ve bunları numaralandırınız.
- Adım: Numaraların yazılı olduğu Button nesnelerinin arka plan rengini değiştirin.
- Adım: Button nesnelerinin ve Label nesnesinin yazı tipi stilini “kalın”, yazı boyutunu “20” yapınız.
- Adım: Form nesnesinin başlığını “0-9” ve Form nesnesinin arka plan rengini değiştirin.
- Adım: Tıklanan Button nesnesine ait sayıyı Label nesnesinin Text özelliğine aktaran programı yazınız.
private void button1_Click(object sender, EventArgs e)
{
label1.Text = "1";
}
private void button2_Click(object sender, EventArgs e)
{
label1.Text = "2";
}
private void button3_Click(object sender, EventArgs e)
{
label1.Text = "3";
}
private void button4_Click(object sender, EventArgs e)
{
label1.Text = "4";
}
private void button5_Click(object sender, EventArgs e)
{
label1.Text = "5";
}
private void button6_Click(object sender, EventArgs e)
{
label1.Text = "6";
}
private void button7_Click(object sender, EventArgs e)
{
label1.Text = "7";
}
private void button8_Click(object sender, EventArgs e)
{
label1.Text = "8";
}
private void button9_Click(object sender, EventArgs e)
{
label1.Text = "9";
}
Örnek 4:
TextBox’a girilen metni Label üzerinde gösteren C# Windows Forms uygulaması nasıl yazılır?
Amaç:
Kullanıcı, bir Textbox içine yazdığı metni Label üzerinde görüntüleyebilecek.
Form Tasarımı:
- 1 adet TextBox (Kullanıcının metin girmesi için)
- 1 adet Label (Girilen metni gösterecek)
- 1 adet Button (Metni güncellemek için)
- Form Başlığı:
"Metin Güncelleme Uygulaması" - Button’un Text özelliği:
"Güncelle"

private void button1_Click(object sender, EventArgs e)
{
label1.Text = textBox1.Text; // TextBox'taki metni Label'a aktarıyor
}
Örnek 5:
C# Windows Forms ile TextBox’taki veriyi ListBox’a ekleme işlemi nasıl yapılır?

Form Tasarımı:
- 1 adet TextBox (Kullanıcının metin girmesi için)
- 1 adet Label (Başlık için)
- 1 adet Button (bastığında listeye aktarması için)
- 1 adet Listbox (eklenen verileri listelemek için)
- Button’un Text özelliği:
"Ekle"
private void button1_Click(object sender, EventArgs e)
{
string veri=textBox1.Text;
listBox1.Items.Add(veri);
}
Örnek 6:
C# Windows Forms ile öğrenci kayıt sistemi nasıl oluşturulur? (ListBox kullanımı)
Amaç: Birden fazla textbox’tan gelen verileri listbox’a ekleme

Form Tasarımı:
- 4 adet TextBox (Kullanıcının bilgileri girmesi için)
- 2 adet GroupBox
- 2 adet Button (bastığında listeye aktarması ve listeyi temizlemesi için)
- 1 adet Listbox (eklenen verileri listelemek için)
private void btnkaydet_Click(object sender, EventArgs e)
{
string ogr_no=textBox1.Text;
string ogr_ad=textBox2.Text;
string ogr_soyad=textBox3.Text;
string ogr_sinif=textBox4.Text;
listBox1.Items.Add(ogr_no+" - "+ogr_ad+" "+ogr_soyad+" - "+ogr_sinif);
textBox1.Clear();
textBox2.Clear();
textBox3.Clear();
textBox4.Clear();
}
private void btntemizle_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}
Örnek 7:
C# Windows Forms ile net hesaplama (doğru-yanlış hesaplama) programı nasıl yapılır?

NOT: Netlerin bulunduğu textBoxların Enable özelliğini False olarak ayarlandı.
private void bhesapla_Click(object sender, EventArgs e)
{
int matD=Convert.ToInt32(textBox1.Text);
int edeD=Convert.ToInt32(textBox8.Text);
int fenD=Convert.ToInt32(textBox12.Text);
int matY=Convert.ToInt16(textBox2.Text);
int edeY=Convert.ToInt16(textBox7.Text);
int fenY=Convert.ToInt16(textBox11.Text);
float matNet = matD - (matY / 4);
float edeNet=edeD - (edeY/4);
float fenNet=fenD - (fenY/4);
textBox4.Text = matNet.ToString();
textBox5.Text = edeNet.ToString();
textBox9.Text = fenNet.ToString();
}
Örnek 8:
PictureBox ve RadioButton kullanarak görsel geçiş (resim değiştirme) nasıl yapılır?

NOT: radioButtonların CheckedChanged özelliğini açmak için çift tıklamak yeterlidir.
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
pictureBox1.Visible = radioButton1.Checked;
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
pictureBox2.Visible = radioButton2.Checked;
}
private void radioButton3_CheckedChanged(object sender, EventArgs e)
{
pictureBox3.Visible = radioButton3.Checked;
}
private void radioButton4_CheckedChanged(object sender, EventArgs e)
{
pictureBox4.Visible = radioButton4.Checked;
}
Örnek 9:
C# Windows Forms ile ürün fiyatı üzerinden indirim hesaplama nasıl yapılır?

public Form1()
{
InitializeComponent();
}
int veri;
float sonuc;
private void button1_Click(object sender, EventArgs e)
{
veri=Convert.ToInt32(textBox1.Text);
sonuc=veri-(veri*10)/100;
label3.Text = sonuc.ToString();
}
private void button2_Click(object sender, EventArgs e)
{
veri = Convert.ToInt32(textBox1.Text);
sonuc = veri - (veri * 25) / 100;
label3.Text= sonuc.ToString();
}
private void button3_Click(object sender, EventArgs e)
{
veri = Convert.ToInt32(textBox1.Text);
sonuc = veri - (veri * 50) / 100;
label3.Text = sonuc.ToString();
}
private void button4_Click(object sender, EventArgs e)
{
veri = Convert.ToInt32(textBox1.Text);
sonuc = veri - (veri * 75) / 100;
label3.Text = sonuc.ToString();
}
Örnek 10:
Koşullara göre öğrenci kayıt işlemi yapan C# Windows Forms uygulaması nasıl yazılır?
Eğer aşağıdaki koşulları karşılıyorsa listeye eklenecek. Eğer karşılamazsa MessageBox ile KAYIT BAŞARISIZ uyarısı verecek.
- Cinsiyeti Erkek olacak
- Yaşı 12’den Büyük olacak
- Temel PC Bilgisi Var olacak

private void button1_Click(object sender, EventArgs e)
{
string ad = textBox1.Text;
int yas=Convert.ToInt32(textBox2.Text);
string pc = comboBox1.Text;
if (radioButton1.Checked == true && yas >= 12 && pc == "VAR")
{
MessageBox.Show("KAYIT BAŞARILI");
listBox1.Items.Add(ad);
}
else
{
MessageBox.Show("KAYIT BAŞARISIZ");
}
}
private void button2_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}
Örnek 11:
Girilen 3 sayıyı büyükten küçüğe sıralayan C# Windows Forms uygulaması nasıl yapılır?

int buyuk, orta, kucuk;
private void button1_Click(object sender, EventArgs e)
{
int sayi1=Convert.ToInt32(textBox1.Text);
int sayi2=Convert.ToInt32(textBox2.Text);
int sayi3=Convert.ToInt32(textBox3.Text);
if (sayi1 > sayi2 && sayi1 > sayi3)
{
buyuk = sayi1;
if (sayi2 > sayi3)
{
orta = sayi2;
kucuk = sayi3;
}
else
{
orta = sayi3;
kucuk = sayi2;
}
}
else if (sayi2 > sayi1 && sayi2 > sayi3)
{
buyuk = sayi2;
if (sayi1 > sayi3)
{
orta=sayi1;
kucuk = sayi3;
}
else
{
orta = sayi3;
kucuk = sayi1;
}
}
else if(sayi3>sayi1 && sayi3 > sayi2)
{
buyuk=sayi3;
if (sayi1 > sayi2)
{
orta = sayi1;
kucuk = sayi2;
}
else
{
orta = sayi2;
kucuk = sayi1;
}
}
label1.Text = buyuk.ToString() + " > " + orta.ToString() + " > " + kucuk.ToString(); ;
}
Örnek 12:
C# Windows Forms ile otel rezervasyon sistemi nasıl geliştirilir?
Bu C# Windows Forms uygulaması, otel rezervasyon sistemi örneğidir. Kullanıcılar, ad-soyad, rezervasyon tarihi, oda tipi, oda numarası, konaklama süresi ve ekstra hizmetleri (örneğin yemek) seçerek bir rezervasyon oluşturabilirler.
Kullanılan Araçlar (Components)
- TextBox: Ad-soyad girişi için
- DateTimePicker: Rezervasyon tarihini seçmek için
- ComboBox: Oda tipi ve oda numarası seçimi için
- NumericUpDown: Konaklama gün sayısını belirlemek için
- CheckBox: Ekstra yemek seçeneği için
- Label: Toplam ücreti göstermek için
- Button: Rezervasyonu tamamlamak için
- ListBox veya RichTextBox: Yapılan rezervasyonları listelemek için

int ucret = 0;
private void button1_Click(object sender, EventArgs e)
{
//Verileri kullanıcıdan çektim
string adsoyad=textBox1.Text;
DateTime tarih=dateTimePicker1.Value;
string odatip=comboBox1.Text;
string odano=comboBox2.Text;
int gun=(int)numericUpDown1.Value;
if (odatip == "TEK KİŞİLİK")
{
ucret += 3000;
}
else if (odatip == "ÇİFT KİŞİLİK")
{
ucret += 5000;
}
else
{
ucret += 10000;
}
if (checkBox1.Checked == true)
{
ucret = (gun * 2000) + (gun * ucret);
label7.Text= ucret.ToString()+ " TL";
}
else {
ucret = (gun * ucret);
label7.Text = ucret.ToString() + " TL";
}
MessageBox.Show("Rezervasyon Başarılı");
listBox1.Items.Add(adsoyad+" - "+odano+" - "+tarih+" Rezervasyon Yapıldı.");
}
Örnek 13:
İki tarih arasındaki gün farkını hesaplayan C# Windows Forms uygulaması nasıl yapılır?

private void button1_Click(object sender, EventArgs e)
{
DateTime dogum=dateTimePicker1.Value;
//DateTime.Now Bugünün Tarihini verir.
DateTime bugun=DateTime.Now;
// TimeSpan İki tarih arasındaki farkı hesaplar
TimeSpan fark = bugun - dogum;
// fark.days: Farkı güne çevirir.
int gun=fark.Days;
label2.Text= gun.ToString()+" Gündür Hayattasınız.";
}
Örnek 14:
C# Windows Forms ile sayaç (artırma-azaltma) uygulaması nasıl yapılır?

int sayi;
private void button1_Click(object sender, EventArgs e)
{
sayi = Convert.ToInt32(textBox1.Text);
sayi += 1;
textBox1.Text = sayi.ToString();
}
private void button2_Click(object sender, EventArgs e)
{
sayi = Convert.ToInt32(textBox1.Text);
sayi -= 1;
textBox1.Text = sayi.ToString();
}
Örnek 15:
PictureBox’ı buton ile sağa ve sola hareket ettirme nasıl yapılır? (C# Windows Forms)

private void araba1ileri_Click(object sender, EventArgs e)
{
pictureBox1.Left = pictureBox1.Left + 10;
}
private void araba1geri_Click(object sender, EventArgs e)
{
pictureBox1.Left = pictureBox1.Left - 10;
}
private void araba2geri_Click(object sender, EventArgs e)
{
pictureBox2.Left = pictureBox2.Left - 10;
}
private void araba2ileri_Click(object sender, EventArgs e)
{
pictureBox2.Left = pictureBox2.Left + 10;
}
Örnek 16:
C# Windows Forms ile dizi (array) kullanımı nasıl yapılır? (öğrenci listesi örneği)

string[] ogr_isim = new string[10];
int[] ogr_ort = new int[10];
int indeks = 0;
private void ekle_Click(object sender, EventArgs e)
{
ogr_isim[indeks] = textBox1.Text;
ogr_ort[indeks] = Convert.ToInt32(textBox2.Text);
indeks++;
textBox1.Clear();
textBox2.Clear();
if (indeks == 10)
{
button6.Enabled = false;
}
}
private void tumunulistele_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
for(int i = 0; i < ogr_isim.Length; i++)
{
listBox1.Items.Add(ogr_isim[i] + " " + ogr_ort[i]);
}
}
private void kalanlar_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
for(int i = 0; i < ogr_ort.Length; i++)
{
if (ogr_ort[i] < 50)
{
listBox1.Items.Add(ogr_isim[i] + " " + ogr_ort[i]);
}
}
}
private void gecenler_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
for(int i = 0; i < ogr_ort.Length; i++)
{
if (ogr_ort[i] >= 50)
{
listBox1.Items.Add(ogr_isim[i] + " " + ogr_ort[i]);
}
}
}
private void takdir_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
for (int i = 0; i < ogr_ort.Length; i++)
{
if (ogr_ort[i] >= 85)
{
listBox1.Items.Add(ogr_isim[i] + " " + ogr_ort[i]);
}
}
}
private void tesekkur_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
for (int i = 0; i < ogr_ort.Length; i++)
{
if (ogr_ort[i] >= 70 && ogr_ort[i]<85)
{
listBox1.Items.Add(ogr_isim[i] + " " + ogr_ort[i]);
}
}
}
Örnek 17:
CheckBox kullanarak çoklu işlem yapan hesap makinesi C# Windows Forms uygulaması nasıl yapılır?

private void hesapla_Click(object sender, EventArgs e)
{
int sayi1 = Convert.ToInt16(textBox1.Text);
int sayi2 = Convert.ToInt16(textBox2.Text);
int islem;
if (checkBox1.Checked == true)
{
islem = sayi1 + sayi2;
listBox1.Items.Add($"{sayi1} + {sayi2} = {islem}");
}
if (checkBox2.Checked == true)
{
islem = sayi1 - sayi2;
listBox1.Items.Add($"{sayi1} - {sayi2} = {islem}");
}
if (checkBox3.Checked == true)
{
islem = sayi1 / sayi2;
listBox1.Items.Add($"{sayi1} / {sayi2} = {islem}");
}
if (checkBox4.Checked == true)
{
islem = sayi1 * sayi2;
listBox1.Items.Add($"{sayi1} x {sayi2} = {islem}");
}
}
private void temizle_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}
Örnek 18:
Vize ve final notuna göre ortalama ve harf notu hesaplayan C# Windows Forms uygulaması nasıl yazılır?

private void button1_Click(object sender, EventArgs e)
{
int vize = Convert.ToInt16(textBox1.Text);
int final = Convert.ToInt16(textBox2.Text);
double ortalama = (vize * 0.40) + (final * 0.60);
label5.Text = ortalama.ToString();
if (ortalama <= 100)
{
if (ortalama >= 90)
{
label6.Text = "AA";
}
else if (ortalama >= 85)
{
label6.Text = "BA";
}
else if (ortalama >= 80)
{
label6.Text = "BB";
}
else if (ortalama >= 70)
{
label6.Text = "CB";
}
else if (ortalama >= 60)
{
label6.Text = "CC";
}
else if (ortalama >= 55)
{
label6.Text = "DC";
}
else if (ortalama >= 50)
{
label6.Text = "DD";
}
else if (ortalama >= 40)
{
label6.Text = "FD";
}
else if (ortalama >= 0)
{
label6.Text = "FF";
}
}
else
{
MessageBox.Show("HATA");
}
}
Örnek 19:
C# Windows Forms ile for döngüsü kullanarak sayı listeleme nasıl yapılır? (tek ve çift sayılar)

private void tumubtn_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
int sayi1 = Convert.ToInt32(textBox1.Text);
int sayi2 = Convert.ToInt32(textBox2.Text);
for(int i = sayi1; i <= sayi2; i++)
{
listBox1.Items.Add(i);
}
}
private void ciftbtn_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
int sayi1 = Convert.ToInt32(textBox1.Text);
int sayi2 = Convert.ToInt32(textBox2.Text);
for (int i = sayi1; i <= sayi2; i++)
{
if (i % 2 == 0)
{
listBox1.Items.Add(i);
}
}
}
private void tekbtn_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
int sayi1 = Convert.ToInt32(textBox1.Text);
int sayi2 = Convert.ToInt32(textBox2.Text);
for (int i = sayi1; i <= sayi2; i++)
{
if (i % 2 == 1)
{
listBox1.Items.Add(i);
}
}
}
Örnek 20:
C# Windows Forms ile sayı tahmin oyunu nasıl yapılır? (Random kullanımı)

int hak = 30;
int pc;
private void button1_Click(object sender, EventArgs e)
{
int tahmin = Convert.ToInt32(richTextBox1.Text);
hak--;
if (tahmin > pc)
{
label1.Text = "AŞAĞI";
}
else if (tahmin == pc)
{
MessageBox.Show("TEBRİKLER DOĞRU TAHMİN");
}
else
{
label1.Text = "YUKARI";
}
if (hak == 0)
{
button1.Enabled = false;
label2.Text = "HAKKINIZ BİTTİ";
MessageBox.Show("DOĞRU CEVAP: " + pc);
}
label2.Text = hak.ToString();
richTextBox1.Clear();
}
private void Form1_Load(object sender, EventArgs e)
{
Random rnd = new Random();
pc = rnd.Next(0, 20);
}
Örnek 21:
C# Windows Forms’ta dizi sıralama işlemi (küçükten büyüğe ve büyükten küçüğe) nasıl yapılır?

public partial class Form1: Form
{
public Form1()
{
InitializeComponent();
}
int[] sayilar = new int[10];
int indeks = 0;
private void button1_Click(object sender, EventArgs e)
{
int sayi = Convert.ToInt32(textBox1.Text);
sayilar[indeks] = sayi;
indeks++;
if (indeks == 10)
{
button1.Enabled = false;
button2.Enabled = true;
}
}
private void Form1_Load(object sender, EventArgs e)
{
button2.Enabled = false;
}
private void button2_Click(object sender, EventArgs e)
{
Array.Sort(sayilar);
/*
Array.sort diziyi küçükten büyüğe sıralar.
*/
for(int i=0;i<sayilar.Length;i++)
{
listBox1.Items.Add(sayilar[i]);
}
Array.Reverse(sayilar);
/*
Array.Reverse daha öncesinde küçükten büyüğe
sıraladığımız diziyi tersine çevirerek büyükten
küçüğe durumuna getirir.
*/
for (int i = 0; i < sayilar.Length; i++)
{
listBox2.Items.Add(sayilar[i]);
}
label3.Text = sayilar[0].ToString();
label4.Text = sayilar[9].ToString();
}
}
Örnek 22:
Kullanıcıdan alınan ad, soyad ve ortalama bilgilerini Microsoft SQL Server veritabanındaki bir tabloya kaydeden ve kayıtlı verileri bir DataGridView üzerinde listeleyen C# Windows Forms uygulaması yazınız. Programda ayrıca veritabanı bağlantısının başarılı olup olmadığını kontrol eden bir yapı bulunmalıdır.
SQL:
CREATE DATABASE OkulDB;
GO
USE OkulDB;
CREATE TABLE Ogrenciler (
Id INT PRIMARY KEY IDENTITY(1,1),
Ad NVARCHAR(50),
Soyad NVARCHAR(50),
Ortalama FLOAT
);
C# WF:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
namespace OgrenciKayitApp
{
public partial class Form1 : Form
{
SqlConnection baglanti = new SqlConnection(
"Server=.;Database=OkulDB;Trusted_Connection=True;");
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Listele();
}
void Listele()
{
try
{
baglanti.Open();
SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM Ogrenciler", baglanti);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
baglanti.Close();
}
catch (Exception ex)
{
MessageBox.Show("Hata: " + ex.Message);
}
}
private void btnKaydet_Click(object sender, EventArgs e)
{
try
{
baglanti.Open();
SqlCommand komut = new SqlCommand(
"INSERT INTO Ogrenciler (Ad, Soyad, Ortalama) VALUES (@ad, @soyad, @ortalama)",
baglanti);
komut.Parameters.AddWithValue("@ad", txtAd.Text);
komut.Parameters.AddWithValue("@soyad", txtSoyad.Text);
komut.Parameters.AddWithValue("@ortalama", Convert.ToDouble(txtOrtalama.Text));
komut.ExecuteNonQuery();
baglanti.Close();
MessageBox.Show("Kayıt eklendi!");
// Temizle
txtAd.Clear();
txtSoyad.Clear();
txtOrtalama.Clear();
Listele();
}
catch (Exception ex)
{
MessageBox.Show("Hata: " + ex.Message);
}
}
}
}




