SEO uyumlu redirect

by Administrator 31. January 2011 17:27

Arama motorları geçici olarak yönlendirilen bir sayfayı sıralamada arka sıralara atarlar. Amaç yönlendirilen sayfaya geçici olarak gidildiği değil, kalıcı olarak gidildiğini söylemektir. 

Bunun için ise Response.Redirect yerine aşağıdaki yöntemi uygulamak yeterli;

Response.RedirectPermanent("http://www.canurek.com");

Tags: , , , , ,

.NET | C#

Objective-C ve Iphone Programlama 1

by Administrator 18. January 2011 19:54

C/C++

Objective-C

#include "library.h"

#import "library.h""

this

self

private:

@private

protected:

@protected

public:

@public

Y = new MyClass();

Y = [[MyClass alloc] init];

try, throw, catch, finally

@try, @throw, @catch, @finally


Bir objenin methodunu çalıştırmak [myObject SomeMethod];

Parametre göndermek [myObject SomeMethod:20];

Şu an için saçma sapan 3rd party yazılımları bir kenara bırakırsak. Iphone programlaması için bir Mac OS X işletim sistemine ve X-Code a ihtiyacımız var.

https://developer.apple.com/devcenter/ios/index.action#downloads

İlk uygulamanızı yapmak için şu linkten faydalanabilirsiniz.

http://mobiforge.com/developing/story/getting-started-with-iphone-development

Daha geniş bilgi kaynağı olarak ta şunu kullanabilirsiniz.

http://developer.apple.com/library/ios/navigation/index.html?section=Resource+Types&topic=Getting+Started

 Ayrıca bana lazım olan bazı püf noktalarını da yazayım.

making an int from NSNumber:
int myInt = (int)[(NSNumber *)numberObject intValue];
also floatValue

making NSNumber from int:
NSNumber *mynumberObj = [NSNumber numberWithInt: 255]

making a String from int:
NSString *myString = [NSString stringWithFormat:@"%d", myInt];

making an int from a String:
int myInt = [mySTring intValue];

concatenating two strings:
NSString *myString1 = [@"field" stringByAppendingString: myString1];

 

 


Tags: , , , ,

Iphone | Mobil | Objective-C

Mssql ile case when yapısı kullanımı

by Administrator 18. January 2011 00:20

nufus tablomuzu ile adres tablomuzu birleştirdiğimizi varsayalım. Eğer adres tablosundaki deger null ise sabit bir deger atayalım. Eğer değer var ise de onu gösterelim...

SELECT
dn.ad,
CASE WHEN(ta.deger IS NULL)
THEN 'Hede Höde...'
WHEN (ta.deger IS NOT NULL)
THEN ta.deger END AS adres
FROM dt_nufus dn
LEFT JOIN tx_adres ta ON dn.id = ta.nufus_id

Tags: ,

SQL

C# ile Globalization.

by Administrator 14. January 2011 22:52

Merhaba arkadaşlar bu makalemizde Globalization konusu üzerinde duracağız. .NET’te farklı coğrafi bölgeler için bölgesel ayarlar oluşturabilmekteyiz. Örneğin Türkiye’de tarih gün-ay-yıl ‘ken başka bir ülkede ay-gün-yıl olabilmekte. İşte burada standardı sağlayabilmek adına .NET içerisinde System.Globalization namespace’i kullanılmaktadır.
CultureInfo sınıfı çalıştığı bilgisayarda yüklü culture’ları alıp kullanabilmemizi sağlayan en temel sınıftır. Culture adı,takvimi,dili, ve alt dilleri temsil eder.
Culture’lar ‘en-US’ , ‘tr-TR’ gibi ifadelerle temsil edilirler

//Mevcut kullanıcının kültürünü almak

CultureInfo c = Thread.CurrentThread.CurrentCulture;          Console.WriteLine(String.Format("Name:{0},DisplayName:{1},NativeName:{2},ISO:{3}"

    ,c.Name,c.DisplayName,c.NativeName,c.TwoLetterISOLanguageName));

Salary = (10000).ToString("C"); //Eger tr ise 10.000,00 TL olacaktır.

//Mevcut Kültürleri listelemek

foreach (CultureInfo item in CultureInfo.GetCultures(CultureTypes.SpecificCultures))

     listCulture.Items.Add(item.Name); //en-US,tr-TR ...

Bazen kültür bilgisi yeterli gelmez ve daha detaylı bilgiye ihtiyaç duyarız bu durumda RegionInfo devreye girer.

 

//Bölgesel bilgileri almak...

CultureInfo c = Thread.CurrentThread.CurrentCulture;

RegionInfo r = new RegionInfo(c.LCID);

Console.WriteLine(String.Format("Display:{0},Currency Symbol:{1}",

    r.DisplayName,r.CurrencySymbol));

 

 

//Mevcut bilgisayardaki kültürde haftanın günlerini listelemek. İstersek spesific bir kültürünki de listelenebilir.

CultureInfo c = Thread.CurrentThread.CurrentCulture;

String[] Days = c.DateTimeFormat.DayNames;

foreach (string day in Days)

{

    listDays.Items.Add(day);

}

//Ayları Listelemek

CultureInfo c = new CultureInfo("en-US");

String[] Months = c.DateTimeFormat.MonthNames;

foreach (string month in Months)

{

    listDays.Items.Add(month);

}

 

Mevcut kültürler dışında kendimiz custom kültürlerde oluşturabiliriz. Bunu CultureAndRegionInfoBuilder sınıfı ile yapabilmekteyiz.

 

Herkese iyi çalışmalar.

Tags: , , ,

.NET | C#

Tasarım Desenleri - Loose Coupling Prensibi (Esnek Bağ)

by Administrator 14. January 2011 22:51

Loose Coupling bağımlılıkların azaltılması anlamına gelmektedir.Bağımlılıktan kastedilen ise bir sınıfın içinde başka bir sınıfı direk olarak kullanmaktır. Bir nesne diğer nesnenin ne kadar fazla detayını biliyorsa o nesneye o kadar bağımlı demektir. Mantığımız her zaman kullanılan sınıf değiştiğinde bağımlı sınıf bundan ne kadar etkileniyor bunu tespit etmek olmalıdır. Bağımlılıkların olması kaçınılmazdır fakat bunu kontrol etmek de elimizdedir.

Bağımlılığa klasik bir örnek vermek gerekirse ;
Burada kumanda nesnesi görevini yapabilmek için televizyon nesnesine ihtiyaç duymaktadır , bir diğer tabirle kumanda televizyona bağımlıdır.  Peki bize ne zararı var bu bağımlılığın ;

-        Tv olmazsa kumanda bir işe yaramaz.

-        Tv değiştiğinde kumanda bu değişimden direk etkilenir.

-        Kumanda sadece televizyonu kontrol edebilir başka aletleri kontrol edemez.

 

Kodsal Bağımlılık gösterimi aşağıdaki gibi olabilir. Kumanda sınıfının içerisinde Televizyon nesnesi direk kullanılmıştır. Yanlış!!!!

public class Kumanda

{

    Televizyon tv = new Televizyon();

 

    public void TelevizyonAc()

    {

        tv.Ac();

    }

}

 

public class Televizyon

{

    public void Ac()

    {

        Console.WriteLine("Televizyon Açıldı");

    }

}

Bu şekilde bir kullanım yerine bağımlılığı azaltmak adına araya bir interface koyulabilir ve artık daha esnek ve genişleyebilir bir yapı elde edebiliriz.Doğru!!!

public interface IKumanda

{

    void Ac();

}

 

public class Televizyon : IKumanda

{

    public void Ac()

    {

        Console.WriteLine("Televizyon Açıldı...");

    }

}

 

public class Radyo : IKumanda

{

    public void Ac()

    {

        Console.WriteLine("Radyo Açıldı...");

    }

}

 

public class Kumanda

{

    IKumanda _kmd;

    //Constructor da hangi tip aletin kumandası olduğu belirleniyor.

    public Kumanda(IKumanda kmd)

    {

        _kmd = kmd;

    }

    public void Ac()

    {

        _kmd.Ac();

    }

}

Artık kumandayı aşağıdaki şekide kullanabiliriz.

Kumanda k=new Kumanda(new Televizyon);

k.Ac();

Bu tasarımın bize faydası artık kumanda nesnesini istediğimiz bir nesneyi kontrol edebilecek hale getirdik. Daha sonra ihtiyaçlar değiştiğinde buzdolabı kontrol eden bir kumanda gerektiğinde yapmamız gereken tek şey yine IKumanda interface’inden kalıtım almış bir Buzdolabı sınıfı türetmek. Bu durumda Kumanda sınıfı hiçbir değişikliğe uğramadan buzdolabını da kontrol edebilecektir.

Kod geliştirirken aklımızda bulundurmamız gereken en temel tekniklerden bir tanesini loose couplin’i basit olarak öğrenmiş olduk umarım faydalı olmuştur.

Tags:

.NET | C#

irrlicht ile oyun, oyun ve oyun

by Administrator 10. January 2011 22:23

Küçüklüğümden beridir nedense içimde hep bir oyun yapma hevesi vardı. Oyun oynarken, bende böyle bi oyun yapsam şunu koyarım içine, böyle yaparım diye hayal ederdim. Henüz programlama nedir bilmediğim zamanlarda bile oyun yapabilmek için “oyun yapma” programları kullandığımı hatırlıyorum. (Hatta zamanında bildirgec'e yazdığım yazıyı hala duruyor)

Son birkaç aydır üzerinde uğraştığım oyun motoru olan irrlicht'i elimden geldiğince sizlere göstermek istiyorum. Aslında bu yazıyı niye yazdığımı bende bilmiyorum, sadece yazmak istedim.

Bir oyun motorundan beklentiniz nelerdir? Önce bu soruya cevap vermek gerekiyor aslında. Ne tür bir oyun yapacağınız, nasıl bir görüntü istiyorsunuz, oyuncuyu nasıl birşeyin içine çekmek istiyorsunuz, bunların hepsi önemli. Eğer 2B bir oyun yapmaksa isteğiniz, 3B oyun motorları size gereksiz bir yük yapacaktır. Yada sistemi yormayan sade bir oyun peşindeyseniz, iyi denebilecek birçok oyun motoru size gereksiz yük olacaktır. Yapamayacaklarından değil sadece fazladan yük olurlar.

Burada tanıtmak istediğim oyun motoru irrlicht. C++ ile yazılmış, open-source, opengl veya directx seçenekleriyle birden fazla işletim destekli bir oyun motoru. Hatta open-source en iyi oyun motorlarından diyebiliriz. Hatta birçok paralı oyun motorundan daha iyi olduğuda söylenmekte.

Biraz irrlicht nin özelliklerinden bahsetmek istersek;
-Direct3D veya opengl render yapabilme
-Birden fazla işletim sisteminde çalışabiliyor. (Linux,windows, OSX..)
-Karakter animasyon sistemi (olmazsa olmaz tabii)
-Parça efekti, light map gibi özel efektler.
-Java, C#, Delphi gibi programları ile yazılabilme olanağı
Daha birçok özelliği var ama hepsinden bahsetmeye gerek yok. Bütün özelliklerine buradan ulaşabilirsiniz.

irrlicht'in kolay kullanımı görebilmeniz için verdiğim bu örnektede görebildiğimiz üzere herşey pointerlarla hallediliyor. Örneğin bizde sadece sahne yöneticisinin poınter ı var. Yada nodelerimizin pointerlarını tutuyoruz. Irrlicht nin en sevdiğim yanlarından biride bu.

Irrlicht yi denemek isterseniz buradan indirdiğiniz dosyanın içindeki bin kalsöründen yapılmış örnekleri görebilir yada examples kasöründen örnekleri değiştirip derleyebilirsiniz.

Kaynak : Kodaman

 

Tags: , ,

.NET | C# | Oyun Programlama (Game Development)

MSSQL Table Ve Field isimleri

by Administrator 6. January 2011 00:26

select distinct name from sysobjects where xtype='U'

Seçili veritabanındaki tabloları listeler

SELECT [name] AS [Column name] FROM syscolumns WHERE id = (SELECT id FROM sysobjects WHERE type = 'U' AND [NAME] = 'tablo_ismi')

Seçilen tablodaki fieldları listeler

Tags: , , ,

SQL

C# ArrayList Sınıfı (Tüm Özellikleri)

by Administrator 3. January 2011 20:18

ArrayList C#’ta bir class’dir. Diger classlar gibi Arraylist’i de  kullanabilmemiz için yavru degiskenini türetmeliyiz. Arraylist aslinda bir dizidir.Fonksiyonlar çalisirken arkaplanda birden fazla dizi çalisir. Arraylist’i bir otosbüsü bekleyen yolcu kuyruguna benzetebiliriz. En son gelen en arkaya geçer. Arraylist için de böyledir. En son eklenen eleman en son indisli elemandir. Eleman eklendikçe Arraylist de büyür, eleman sayisinda bir sinirlama yoktur. Arraylist’in eleman türü object’tir. Bunu ilk örnekte daha iyi anlayacaksiniz. Arraylist için simdilik bu ön bilgiler yeterli. Isterseniz hemen Arraylist fonksiyonlarina geçelim.

 
ArrayList olusturabilmek için projemize using System.Collections kodunu using satirina eklemeliyiz. Bu kodla System.Collections kütüphanesini çagirmis oluruz.
 
Örneklere geçmeden önce projenize bir adet Button ve bir adet TextBox kontrolü ekleyiniz.
 
Add Methodu: ArrayList class’indan olusturdugumuz yavru degiskene bir eleman eklemek için kullanilir. Mesela:
 
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent
}
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
int[] dizi = new int[5] { 1, 2, 3, 4, 5 };
 
diziListe.Add(dizi[2]);// diziListe'nin ilk elemani 3 olur
diziListe.Add(12); // diziListenin ikinci elemani 12 olur
diziListe.Add("kelime"); // dizilistenin üçüncü elemani kelime stringi olur
this.Text = diziListe[0].ToString();// Form'un basligina 3 yazar
this.Text = diziListe[1].ToString();// Form'un basligina 12 yazar
this.Text = diziListe[2]; // Form'un basligina kelime yazar
}
}
Burada dikkat edilmesi gereken ilk nokta Add fonksiyonu ile Arraylist’e ayni anda sadece bir eleman ekleyebilmemiz. Ikinci önemli nokta ise hem bir integer degeri ekledik hem de bir string degeri ekledik. Buradan da analasilacagi üzere olusturdugumuz Arraylist’e object türünde degerler atabiliyoruz. Mesela biz burda diziListe isimli yavru degiskene bool, double, float, string, byte, hatta Button, listBox türünde nesneler de ekleyebiliyoruz çünkü object türü degisken hepsini kapsayabiliyor.
 
AddRange Methodu: AddRange fonksiyonu Add fonksiyonuna benzemektedir. Aradaki tek fark Add ile sade bir degeri ekleyebiliyorduk. AddRange ile ise Arraylist’e bir dizinin tamamini ekleyebiliriz.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
int[] dizi = new int[5] { 11, 21, 34, 56, 74 };
diziListe.AddRange(dizi);
textBox1.Text = diziListe[2].ToString();// textBox1’in içine 34 yazar
}
 
Burada bir noktayi hatirlatalim, listBox’in elemenlari da bir dizidir. Yani sunu da yapabilirdik:
diziListe.AddRange(listBox1.Items);
Bu kod ile listBox içindeki bütün degerleri Arraylist’imizin içine ekleyebiliriz.
 
 
Clear Methodu: Arraylist içindeki bütün elemanlari silmek için kullanilan bir fonksiyondur.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
int[] dizi = new int[5] { 11, 21, 34, 56, 74 };
diziListe.AddRange(dizi);
diziliste.Clear();// diziListe'nin içine tamamen temizler
textBox1.Text = diziListe[2].ToString();// hata verir
}
 
 
Contains Methodu: Fonksiyona parametre olarak verilen degiskenin Arraylist içinde olup olmadigina bakar. Eger var ise true yok ise false döndürür.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
int[] dizi = new int[5] {1,2,3,4,5 };
diziListe.AddRange(dizi);
 
if (diziListe.Contains(Convert.ToInt32(textBox1.Text))==true)
{
MessageBox.Show("girilen deger diziListe içinde mevcut");
}
else
{
MessageBox.Show("girilen deger diziListe içinde yok");
}
}
 
 
Count Fonksiyonu: Arraylist’in eleman sayisini döndüren fonksiyondur.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
int[] dizi = new int[] {1,2,3,4,5,6 };
diziListe.AddRange(dizi);
textBox1.Text = diziListe.Count.ToString();//textBox1'in içine 6 yazar
}
 
 
IndexOf Fonksiyonu: Arraylist içinde istedigimiz elemani aramak için kullaniriz. Fonksiyonun üç farkli kullanimi vardir. En genel olani parametre olarak sadece aranan elemanin kendisini alanidir. Eger aranan eleman Arraylist içinde var ise elemanin indis numarasini, yok ise -1 döndürür. IndexOf fonksiyonu aramaya Arraylist’in basindan baslar.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
string[] dizi = new string[5] {"aa","bb","cc","dd","ee" };// fonksiyonun parmetresi aradigimiz elemandir diziListe.AddRange(dizi);
int sira;
sira = diziListe.IndexOf("cc", 0, diziListe.Count – 1);
textBox1.Text = sira.ToString();
 
}
 
LastIndexOf Fonksiyonu: IndexOf fonksiyonu gibi Arraylist iinde herhangi bir elemani aramak için kullanilir. IndexOf’tan farki aramaya sondan baslamasidir. Elaman sayisi çok fazla olan Arraylist’lerde aradigimiz eleman sonlara daha yakinsa bu fonksiyon bize hiz kazandirir. Eger aranan eleman Arraylist içinde var ise elemanin indis numarasini, yok ise -1 döndürür.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
string[] dizi = new string[5] {"aa","bb","cc","dd","ee" };     diziListe.AddRange(dizi);
int sira;
sira = diziListe.LastIndexOf("dd", 0, diziListe.Count – 1); // Aramaya sondan basladigi için elemani ikinci seferde bulur. Eger IndexOf kullansaydik elemani üçüncü seferde bulacakti.
textBox1.Text = sira.ToString();
}
 
Insert Methodu: Arraylist içinde herhangi bir araliga eleman eklemek için kullaniriz. Araya eleman ekledigimiz için Arraylist’in eleman sayisi da artmis olur (tipki otobüs beklerken birinin araya girmesi gibi). Fonksiyonun ilk parametresine elemani eklemek istedigimiz indis numarasini, ikinci parametreye ise elamani yazariz.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
string[] dizi = new string[5] { "aa", "bb", "cc", "dd", "ee" };// diziListe.AddRange(dizi);
 
diziListe.Insert(2, "ff"); // diziListenin 2 numarali indisine ff ekledik. diziListenin eleman sayisi 6 oldu.
 
textBox1.Text = diziListe[2].ToString(); // textBox1'in içine ff yazar.
}
 
InsertRange Methodu: Fonksiyonun Insert fonksiyonunda tek farki araya birden fazla elemani bir seferde ekleyebilmesidir.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
int[] dizi = new int[5] { 0, 1, 2, 3, 4 };
diziListe.AddRange(dizi);
int[] eklenecek=new int[3]{ 10, 11, 12 };
diziListe.InsertRange(2, eklenecek); // diziListenin 2 numarali indisinden sonra {10,11,12} dizisini ekledik. diziListenin eleman sayisi 8 oldu.
// diziListenin son hali{0,1,10,11,12,2,3,4,5} seklidedir.
textBox1.Text = diziListe[2].ToString(); // textBox1'in içine 10 yazar.
}
 
Remove Methodu: Fonksiyona parametre olarak girilen elemani Arraylist’in içinde bulur ve siler. Arraylist’in eleman sayisi 1 azalmis olur.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
int[] dizi = new int[5] { 0, 1, 2, 3, 4 };
diziListe.AddRange(dizi);
diziListe.Remove(3)
textBox1.Text = diziListe[3].ToString(); // textBox1'in içine 4 yazar.
}
 
RemoveAt Methodu: Remove fonksiyonundan tek farki parametre olarak elemani degil elemanin indis numarasini almasidir.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
int[] dizi = new int[5] { 7, 8, 9, 10, 11 };
diziListe.AddRange(dizi);
 
diziListe.Remove(2);
textBox1.Text = diziListe[2].ToString(); // textBox1'in içine 10 yazar.
}
 
Reverse Fonksiyonu: Arraylist’in eleman siralamasini tersine çevirmek için kullanilir.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
int[] dizi = new int[5] { 7, 8, 9, 10, 11 };
diziListe.AddRange(dizi);
 
diziListe.Reverse();// dizi bundan sonra {11,10,9,8,7} halini alir.
 
textBox1.Text = diziListe[2].ToString(); // textBox1'in içine 9 yazar.
}
 
 
Sort Methodu: Arraylist’in elamanlarini küçükten büyüge dogru siralamak için kullanilir. Eger elemanlar string tipinde ise alfabetik siralama yapar.
 
private void button1_Click(object sender, EventArgs e)
{
ArrayList diziListe = new ArrayList();
 
string[] dizi = new string[4] { "Ankara", "Izmir", "Istanbul", "Gaziantep" };
 
diziListe.AddRange(dizi);
diziListe.Sort(); //dizinin son hali {"Ankara","Gaziantep","Istanbul","Izmir"} seklinde olur.
 
textBox1.Text = diziListe[3].ToString(); // textBox1'in içine Izmir yazar.
}

Tags: , ,

.NET | C#

Asp.net 4.0 Route Image Css Display Problem

by Administrator 2. January 2011 23:37

ASP.NET 4.0 ile birlikte gelen System.Web.Routing namespace i ile artık URL Rewrite işlemlerini yaparken ne web.config dosyasının dinamik düzenlemesine gerek kalıyor nede reqular expressionlar ile uğraşmamıza Microsoft bizi düşünüp gerçekten olayı çok çok basite indirgemiş ancak ne varki; ne yaparsanız yapın URL Rewrite işlemlerinin hepsinde tarayıcılara bağlı olarak html nesnelerinin path gerektiren attributelarına atanan değerler tarayıcı üzerindeki url yi baz alarak düzenleneceğinden resimlerinizin ve css dosyalarınızın gösteriminde sorunlar oluşacaktır.

bu sorunun çözümü için <img tagındaki verilere genel olarak runat="server" ifadesi eklenir src attribute'nun başınada ~/ ifadesi eklenir

Eski Hali(Not Working): <img alt="" src="images/kirmizialt.gif" style="width: 32px; height: 6px" />
Yeni Hali(Working): <img alt="" src="~/images/kirmizialt.gif" style="width: 32px; height: 6px" runat="server" />

Bu şekilde image dosyalarındaki problemler çözümlensede bazı noktalarda örneğin bir table hücresine backgorund-image tanımladığı gibi bir durumda W3 strandartlarına uyup background-image i style attribute'u içerisinde tanımlamak isterseniz bu yöntem işe yaramayacaktır. Bunun yerine ResolveUrl fonksiyonunu kullanabiliriz.

Örneğin;

Eski hali(Not Working): <td style="background-image:url('images/kirmiziback.gif');" class="baslik_beyaz"> 

Şeklinde tanımlanan bir hücrede url nerde olursa olsun(yemektarifleri/avetleri) gibi bir dizin altında images klasörünü arayacağından doğru sonuç vermeyecektir.

Bunun yerine;

Yeni hali(Working):

<td style="background-image:url(<%= Page.ResolveUrl("~")%>images/kirmiziback.gif);" class="baslik_beyaz">

Şeklinde tanımlayarak <%= Page.ResolveUrl("~")%> kodunu image url'sinin başına getirip sorunun çözülmesini sağlayabilirsiniz. Genellikle MasterPage kullanımlarında ortaya çıkan bu durumlarda ResolveUrl methodu çok işinize yarayacaktır.

Kolay gelsin...

Tags: , , , , ,

.NET | C#

DefaultButton belirlemek

by Administrator 2. January 2011 23:33

ASP.NET sayfalarında o an için içeriğinde bulunduğunuz textbox a göre Enter tuşunun hangi butonu harekete geçireceğini aşağıda kod ile belirleyebilirsiniz. 

txtboxName.Attributes.Add("onkeypress", "javascript:return WebForm_FireDefaultButton(event, '" + btnName.ClientID + "')");

Tags: , , , ,

.NET | C#

Freelance

Freelance iş tekliflerinizi buraya tıklayarak, gönderebilirsiniz. En kısa sürede size dönerim.

You can send freelance offers to here.
I will return as soon as possible.

Page List