Delegeler ve Olaylar (Delegates and Events) – III

C#, VB.NET, ASP.NET 2 Comments »

System.EventArgs Sınıfı

GUI kontrollerinde dikkat ettiyseniz kontrollerin çalıştırdığı metodlarda System.Object türünde sender ve System.EventArgs türünde e isimli iki tane parametre kullanılır. Bu format, önceki sayfada yazdığım gibi System.EventHandler isimli delegate’ten gelmektedir. Buradaki sender parametresi, eventi tetikleyen objeyi temsil eder. e parametresi ise o obje ile ilgili detayları bildirir. Bu parametreler, eventi üreten kontrolü öğrenmek ve ona ait ek özellikleri kullanmak için kolaylıklar saÄŸlar. ÖrneÄŸin mouse ile Form’a tıklandığında (MouseDown) mouse’in saÄŸ mı yoksa sol mu tıklandığını e parametresinden anlarız. Read the rest of this entry »

Delegeler ve Olaylar (Delegates and Events) – II

C#, VB.NET, ASP.NET 14 Comments »

Olaylar(Events)

Olaylar, mouse ile tıklama, klavyeden tuÅŸa basma gibi kullanıcının iÅŸletim sistemi üzerinden gerçekleÅŸtirdiÄŸi faaliyetlerdir. Bu ÅŸekilde, uygulamamız içerisinde meydana gelen durum deÄŸiÅŸikliklerine karşı hassas olan ve bu deÄŸiÅŸiklikler doÄŸrultusunda yönlendirilebilen programlama modeline olay güdümlü programlama (event driven programming) denir. Bu modeldeki programlar, bir ÅŸeyler yapmak için bazı ÅŸeylerin gerçekleÅŸmesini beklerler. Bir bileÅŸen üzerinde meydana gelen olayların takipçisi olup onları yakalayan mekanizmaya olay yöneticisi (event handler) denir. Olay tutucusu veya iÅŸleyicisi olarak ta tanımlanan event handler, ilgili olay gerçekleÅŸtiÄŸi zaman tetiklenir. Olay yöneticilerinin yönlendirilmesi bizim tarafımızda kodlanır, olay yöneticisinin olay gerçekleÅŸtikten sonra hangi iÅŸlemleri yapacağını delegatelerle tanımlarız. Yani olay yöneticileri, delegatelerle temsil edilir. Read the rest of this entry »

Delegeler ve Olaylar (Delegates and Events) – I

C#, VB.NET, ASP.NET 2 Comments »

DeÄŸiÅŸkenler gibi metodlar da bellek üzerinde özel bir alanda yaÅŸar. DeÄŸiÅŸken pointerleri gibi metodların baÅŸlangıç adresini iÅŸaret eden pointerler bulunur. Bunlara metod iÅŸaretçileri (function pointers) denilir. İstenirse metodlar, hafıza üzerinden sadece isimleriyle deÄŸil bu pointerler sayesinde de çaÄŸrılabilir. C veya C++’da bu yöntem yoÄŸun olarak kullanılmaktaydı. .NET’in eskiden alışagelmiÅŸ unmanaged pointer desteÄŸi C# ile sınırlıdır. VB.NET, bu destekten yoksundur. Fakat desteklediÄŸi pointer yapısı CLS ile uyumlu olmadığı için tür güvenliÄŸi sunmaz. Bu yüzden .NET, fonksiyon iÅŸaretçileriyle aynı amaca sahip tür güvenliÄŸi saÄŸlayan delege (delegate) isimli iÅŸaretçiler sunar. Read the rest of this entry »

Kullanıcı Tanımlı Exception Türü (User-defined Exceptions)

C#, VB.NET, ASP.NET No Comments »

Application.Exception class’ını kullanarak kendimiz istisnai durumlar yaratabiliriz. Böylece bizim belirlediÄŸimiz koÅŸullarda da istisnai durum oluÅŸmuÅŸ olur. Read the rest of this entry »

Statik Sınıflar(Static Classes) C#

C#, VB.NET, ASP.NET 2 Comments »

Önceki yazıda, bir sınıfın statik üyelerine eriÅŸmek için o sınıftan bir nesne oluÅŸturmamıza gerek kalmadığını doÄŸrudan sınıfın adını kullanarak eriÅŸebileceÄŸimizi hatta bu üyelere, oluÅŸturulmuÅŸ bir instance üzerinden eriÅŸilemeyeÄŸini söylemiÅŸtik. İçerisinde sadece statik üye içeren bir sınıfı ele aldığımızda hiç bir zaman bu sınıftan türemiÅŸ bir nesneye ihtiyacımızın olmayacağını söyleyebiliriz ama bu durum, bu sınıftan instance oluÅŸturamayacağımız anlamına gelmemektedir. Read the rest of this entry »

Statik Üyeler (Static Members) [ C# / VB.NET ]

C#, VB.NET, ASP.NET 5 Comments »

.NET Framework’ta nesneler, statik(static) veya statik olmayan(non-static) üyelerden oluÅŸur. Statik olmayan üyeler, class’tan türetilmiÅŸ nesnenin üyeleridir, sınıftan kaç nesne türetilmiÅŸse bu üyelerin o kadar kopyası bulunur, bir nesneye ait üyenin deÄŸerinin deÄŸiÅŸmesi, o üyenin diÄŸer nesnelerdeki deÄŸerini etkilemez. Statik üyeler ise, doÄŸrudan class’ın kendi üyeleri olup class’tan üretilen nesneden bağımsız hareket ederler. Tüm nesnelerin ulaÅŸabileceÄŸi ortak bir bellek alanında tutulur. Bu nedenle statik üyelere eriÅŸmek için class’tan bir nesne oluÅŸturmaya gerek yoktur. Bu da statik üyelerle iÅŸlem yapmayı hızlandırır. Bütün statik üyeler, deÄŸer veya referans türü olup olmamasına bakılmaksızın hafızanın heap alanı üzerinde depolanır. Bu heap alanına 8 byte’lık bir pointer iÅŸaret eder. Kaç tane instance’in yaratıldığı önemli olmayıp her zaman tek bir hafıza slotu varlık gösterir. Read the rest of this entry »

C# Yield Sözcüğü (Yield Keyword)

C#, VB.NET, ASP.NET 2 Comments »

C# 2.0 ile birlikte gelmiÅŸ olup iterasyon iÅŸlemlerini daha kısa ifadelerle oluÅŸturmayı saÄŸlar. Foreach() metodu gibi IEnumerable türündeki bir metodun foreach yöntemiyle hangi deÄŸerleri döndüreceÄŸi, yield anahtar sözcüğüyle belirlenir. Böylece her iterasyon için farklı bir deÄŸer gönderme imkanına sahibiz. Yield sözcüğü, “return” veya “break” ifadesiyle birlikte kullanılır. “return” ifadesi, geriye deÄŸer döndürmesini, “break” ifadesi ise o adım için iterasyon yapmamasını saÄŸlar. Read the rest of this entry »

Anonymous Methods (İsimsiz Metodlar) [C#]

C#, VB.NET, ASP.NET 3 Comments »

2.0’dan önceki C# sürümlerinde bir delegate’i tanımlamak için daha önce tanımlanmış bir metod(named method) kullanmak gerekirdi. C# 2.0 ile birlikte C++’taki inline metodlar gibi isimli metod zorunluluÄŸu ortadan kaldırılmış olup isimsiz metod da kullanılma imkanı sunulmaktadır. Anonymous Method sayesinde bir kod bloÄŸunu, delegate tanımlamasında parametre olarak geçebileceÄŸiz. Delegate çalıştığı zaman kendisine parametre olarak geçilmiÅŸ kod bloÄŸunu çalıştırır. Read the rest of this entry »

DataTable-DataSet LoadOption Enumeration [C#, VB.NET]

C#, VB.NET, ASP.NET No Comments »

ADO.NET 2.0 ile gelen yeniliklerden biri olan System.Data.LoadOption numaralandırıcısı, veri kaynağından alınmış kayıtların, Load() veya Fill() metodu kullanılarak var olan ve üzerinde primary key tanımlı veri tablosuna yüklenirken aynı kayıtlara rastlanıldığında nasıl davranılacağını belirtir. Değer olarak aşağıdaki seçeneklerden birini alır.


Read the rest of this entry »

DataTable’de DeÄŸiÅŸen Kayıtların Bilgisi [VB.NET, C#]

C#, VB.NET, ASP.NET No Comments »

DataTable, DataSet, DataRow gibi nesnelerdeki satırların durumu hakkında bilgi almak herhangi bir güncelleme olmuÅŸsa hangi aÅŸamada olduÄŸunu öğrenmek için System.Data.DataRowState ve System.Data.DataRowVersion kavramları kullanılır. Read the rest of this entry »

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS GiriÅŸ