Fonksiyon Çağırma

Shuttesh

Kilopat
Katılım
7 Mart 2015
Mesajlar
36
Daha fazla  
Cinsiyet
Erkek
Merhaba

C#:
private void harfyazdir(object sender, KeyPressEventArgs e)
        {
            if (char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }
        }
Bu şekilde bir fonksiyon oluşturarak 'textBox' içine sayı girişini engellemeye çalışıyorum. Fakat textBox'ın keyPress olayında

C#:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            harfyazdir();
        }
bu şekilde çağırınca bu hatayı alıyorum

" Önem Derecesi Kod Açıklama Proje Dosya Çizgi Gizleme Durumu
Hata CS7036 'OgrenciDetay.harfyazdir(object, KeyPressEventArgs)' öğesinin gereken resmi 'sender' parametresine karşılık gelen hiçbir bağımsız değişken yok OgrenciBilgiSistemi C:\Users\Emin\source\repos\OgrenciBilgiSistemi\OgrenciBilgiSistemi\OgrenciDetay.cs 122 Etkin "

Bunu nasıl çözerim?
 
Key press'e değil de textchanged olayına şöyle bir şey yazabilirsin.

C#:
private void textBox1_TextChanged(object sender, EventArgs e)
{
    if (!System.Text.RegularExpressions.Regex.IsMatch(textBox1.Text, "^[a-zA-Z ]"))
    {
        MessageBox.Show("This textbox accepts only alphabetical characters");
        textBox1.Text.Remove(textBox1.Text.Length - 1);
    }
}
 

Buda olabilir de yine de yazdırıyor bastığında messageBox kullanıp uyarı mesajı vermesi hoşuma gitmedi. keypress ile mümkün değil mi?
 
Buda olabilir de yine de yazdırıyor bastığında messageBox kullanıp uyarı mesajı vermesi hoşuma gitmedi. keypress ile mümkün değil mi?


Bunu dene birde.

C#:
private void TextBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsLetter(e.KeyChar))
e.Handled = true;
}
 
Bu kodlar bir işe yaramadı ama bir arkadaşım kodu düzeltti şu şekilde kodlar çalışıyor

fonksiyonu bu şekilde oluşturduktan sonra
C#:
public void harfyazdir(KeyPressEventArgs e)
        {
            if (char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }

textBox'un keyPress olayında şu şekilde çağırmak gerekiyor
C#:
harfyazdir(e);
 
C# ve Java gibi programlama dillerinde bunlara fonksiyon değil metot denir. C ve PHP gibi dillerde fonksiyon ismi verilir. Hayırlı geceler.
 
Kodu düzeltseydin daha çok yardımcı olurdun. Hayırlı geceler sizede
Parametreleri girmemişsiniz. 2 adet parametre var. Metodu şu şekilde çağırın.
C#:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
     harfyazdir(sender,e); //parametreleri ekledim içine
}
 
C#:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            harfyazdir(e);
        }
Bu şekilde düzelttim teşekkürler.
 
C# ve Java gibi programlama dillerinde bunlara fonksiyon değil metot denir. C ve PHP gibi dillerde fonksiyon ismi verilir. Hayırlı geceler.

İstersen şu kaynaklara bir bak. Hayırlı geceler

 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…