25 Mart 2010 Perşembe

C# da Operatörler

Matematiksel Operatörler
........................
+ Toplama
- Çıkarma
* Çarpma
/ Bölme
++ Artırma
-- Eksiltme
% Mod

Mantıksal Operatörler
.....................
< Küçüktür
> Büyüktür
<= Küçük Eşit
>= Büyük Eşit
== Eşit
!= Eşit Değil
&& Ve
|| Veya

Diğer Operatörler
.................
= Aktarma
// Açıklama satırı

24 Mart 2010 Çarşamba

C# da Foreach Döngüsü

foreach ile nesneler döndürülebilir.
Örneğin aşağıdaki program, formun üzerindeki tüm textBox lara "Kütahya" yazar. Ayrıca formdaki textBox ları ve combobox ları sayarak sonuçları labellarda gösterir.


private void Form1_Load(object sender, EventArgs e)
{
int i=0, j=0;
foreach (Control cont in this.Controls)
{
if (cont is TextBox)
{
cont.Text = "Kütahya";
i++;
}
if (cont is ComboBox) j++;
}
label1.Text = i.ToString();
label2.Text = j.ToString();
}

C# ile mail gönderme


Öncelikle projeye kod sayfasının en üstünde aşağıdaki şekilde .net mail sınıfını dahil etmeniz gerekir.

using System.Net;
using System.Net.Mail;
.
.
Gönderinin adresi hotmail ise smtp adresi: smtp.live.com
gmail için ise : smtp.gmail.com
Her ikisi için port numarası 587 dir.
.
.
Form Kodu:

private void button1_Click(object sender, EventArgs e) //Gönder butonu
{
SmtpClient istemci = new SmtpClient(this.gonderenSMTP.Text,Convert.ToInt32(port.Text));
MailAddress gon = new MailAddress(this.gonderenMail.Text, this.gonderenAd.Text);
MailAddress alan = new MailAddress(this.kime.Text, this.kime.Text);
MailMessage msg = new MailMessage(gon, alan);
msg.Subject = this.baslik.Text;
msg.Body = this.mail.Text;
istemci.EnableSsl = true;
if (label8.Text != "")
{
Attachment ekle = new Attachment(@label8.Text);
msg.Attachments.Add(ekle);
}
System.Net.NetworkCredential SMTPUserInfo = new System.Net.NetworkCredential(this.gonderenMail.Text, this.gonderenSifre.Text);
istemci.UseDefaultCredentials = false;
istemci.Credentials = SMTPUserInfo;
istemci.Send(msg);
}

private void button2_Click(object sender, EventArgs e) //Dosya ekle butonu
{
openFileDialog1.ShowDialog();
label8.Text = openFileDialog1.FileName.ToString();
}

C# da Switch( ) Yapısı

Açıklama:
if benzeri bir komut yapısıdır. Belli bir değişkenin aldığı değerlere göre işlem yapılmasını sağlar.

Kullanımı:
.
.
.
switch(değişken)
{
case değer1: komut1; break;
case değer2: komut2; break;
case değer3: komut3; break;
case default: komut4; break;
}

Eğer değişken değerlerin hiç birine sahip değilse default dan sonraki komutlar çalışır. Default yazılmak zorunda değiildir.


private void button1_Click(object sender, EventArgs e)
{
int secim;
secim = int.Parse(textBox1.Text);
switch (secim)
{
case 1: label1.Text = "0"; break;
case 2: label1.Text = "1"; break;
case 3: label1.Text = "2"; break;
default: label1.Text = "Geçersiz Seçim"; break;
}
}

C# da Do While ve While Döngüleri

While Döngüsü:
---------------
Belli bir şarta bağlı olarak istenilen komutların çalıştırılmasını sağlar.
Kullanımı:
---------
While (şart)
{
...komutar
}

Komutları hiç çalıştırmadan döngü başında şarta bakar.
Şart sağlandında komutları çalıştırır ve tekrar döngü başına gelir.
Şart sağlandığı sürece komutları çalıştırmaya devam eder.

Do ... While Döngüsü:
---------------------
Belli bir şarta bağlı olarak istenilen komutların çalıştırılmasını sağlar.
Kullanımı:
---------
Do
{
...komutlar
}
while (şart);

Şarta bakmaksızın komutları bir defa çalıştırır ve daha sonra şarta bakar.
Şart sağlandığı sürece komutları çalıştırmaya devam eder.

Örnek Kod:

private void Form1_Load(object sender, EventArgs e)
{
int x;
x=1;

while (x < 10)
{
listBox1.Items.Add(x);
x++;
}

do
{
listBox2.Items.Add(x);
x++;
}
while (x < 10);

}

C# da if komutu

Amacı: Belli bir şarta ya da şartlara bağlı olarak istenilen komutların çalışmasını sağlar.
Kullanım1: if (şart) komut;
Kullanım2: if (şart) komut1;
else komut2;
Kullanım3: if (şart1) komut1;
else if (şart2) komut2;
else komut3;

Örnek Kod:
----------
private void button1_Click(object sender, EventArgs e)
{
sayi = int.Parse(textBox1.Text);
if (sayi < 0) label2.Text = "Negatif";
else if (sayi > 0) label2.Text = "Pozitif";
else label2.Text = "Sıfır";
}

C# da for döngüsü

Amacı:
İstenilen komutların belli sayıda çalıştırılmasını sağlar.
Kullanımı:
for (dongu değişkeni=başlangıç değeri;şart;artış miktarı) komut;
Eğer komutlar birden fazla ise parantez içerisine alınır.

Örnek Kod:
inputbox ile girilen 5 adet sayının en büyük ve en küçüğünü bulan program.

private void Form1_Load(object sender, EventArgs e)
{
for (i = 1; i <= 5; i++)
{
sayi = int.Parse(Microsoft.VisualBasic.Interaction.InputBox(i.ToString()+".Sayı Giriniz", "Sayı Girişi", "", 100, 120));
if (i == 1)
{
enb = sayi;
enk = sayi;
}
if (sayi > enb) enb = sayi;
if (sayi < enk) enk = sayi;
listBox1.Items.Add(sayi.ToString());
}
textBox1.Text = enb.ToString();
textBox2.Text = enk.ToString();
}