talhaturan.com

yazılım geliştirme ve dahası...

Visual Studio .NET 2005'teki bir projede, Internet Explorer 8 kullanarak hata ayıklamak (debug) ile ilgili sorun yaşıyorsanız, Registry'ye ufak bir kayıt eklemeniz gerekiyor.

Registry'ye eklenecek yeni DWORD değeri

Yapılacaklar şunlar:

1. Başlat -> Çalıştır : regedit
2. HKEY_LOCALMACHINE \ Software \ Microsoft \ Internet Explorer altında Main bölümünü seçin.
3. Sağ tarafta, sağ tuşa tıklayıp Yeni -> DWROD Değeri (Value) seçeneğine tıklayın.
4. Kayıt girdisi ismi olarak "TabProcGrowth" yazın ve değeri sıfır olarak kalsın.
5. IE8 ve Visual Studio'yu yeniden başlatın.

Bu kadar.


The Science of Aesthetics by Keith Lang from Keith Lang on Vimeo.


Kaynak: http://37signals.com/svn/posts/2092-i-cant-think-of-a-better-intro-to-the-essential

Visual Studio 2008 son açılan projeler

Visual Studio .NET'te çalışırken, açılış sayfasında görünen son projeler listesini temizlemek veya listeden proje silmek için aşağıdaki Kayıt Defteri (Registry) kayıtlarını düzenlemek gerekiyor:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\7.0\ProjectMRUList]
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\7.1\ProjectMRUList]
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\ProjectMRUList]
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList]

Visual Studio sürüm numaraları da şöyle:

Visual Studio 2002 - 7.0
Visual Studio 2003 - 7.1
Visual Studio 2005 - 8.0
Visual Studio 2008 - 9.0


Bazı durumlarda, siteleri Internet Explorer 8 ile görüntülerken CSS ya da javascript'le ilgili sorunlar çıkabiliyor. Site yerleşiminde bozukluklar, bazı script'lere karşı tarayıcının verdiği tepkiler, vs.

Bunu, en azından işlevselliği bozmamak adına, çözmenin şöyle bir yolu var: IE8'in, IE7 gibi çalışmasını sağlamak.

Bunun için, sayfaya bir meta etiketi ekliyoruz:

<meta http-equiv="X-UA-Compatible" content="IE=7" />Çoğu sorun bu şekilde çözülür sanırım.


Buradaki örnek Textarea nesnesi içindir.

http://noteslog.com/personal/projects/wresize/1.1/jquery.wresize.js adresindeki wresize plug-in'ini, jQuery son versiyonu ile birlikte projeye ekliyoruz.

<script type="text/javascript" src="http://jquery.com/src/jquery-latest.pack.js"></script>
<script type="text/javascript" src="js/jquery.wresize.js"></script>
Hemen bu satırlardan sonra bir de resize fonksiyonu ekliyoruz:

<script type="text/javascript">

jQuery( function( $ ) {
function content_resize() {

var w = $( window );
var H = w.height();
var W = w.width();

$( '#content' ).css( {width: W-20, height: H-20} );

}

$( window ).wresize( content_resize );

content_resize();

} );

</script>
$( '#content' ), nesnenin ID'si burada.Sayfa içindeki DIV de şu:

<div id="content" style="border: 1px dashed silver; position:absolute; overflow:auto;">test</div> Kaynak: http://noteslog.com/post/how-to-fix-the-resize-event-in-ie/

http://www.umutluoglu.com/post/2009/05/08/Bir-Sayfada-Birden-Fazla-DefaultButton-Kullanimi.aspx

ASP.NET sayfalarında kullanıcının, doldurduğu form bilgilerini kolay şekilde buton nesnesi ile sunucuya gönderebilmesi için <form> elementindeki defaultbutton özelliğine buton kontrolünün ID değerini atayabiliriz. Böylece kullanıcı butona tıklamadan klavyeden enter tuşuna bastığında formdaki bilgiler sunucuya gönderilir. Peki sayfamızda farklı formlar varsa(örneğin sayfanın sol kısmında login formu, sağ kısmında kullanıcı kayıt formu) kullanıcı o an hangi form üzerinde enter tuşuna basarsa içerisinde bulunduğu formun butonuna tıklanmasını nasıl sağlarız? Yine DefaultButton özelliğini kullanarak yapabiliriz ama <form> elementinin defaultbutton özelliği değil!

Bu tarz bir işlem için öncelikli olarak her iki formu da birer Panel kontrolü içerisine almamız gerekir. Panel kontrolünün de aslında DefaultButton adında bir özelliği vardır. Dolayısıyla her iki panelin kendi içlerinde yer alan ve submit işlemini yapacak butonun ID değerini Panel’in DefaultButton özelliğine atarsak formlar istediğimiz şekilde davranabilecektir. Eğer panellerin dışında başka bir formunuz daha varsa ve bu panellerin dışında enter tuşuna basıldığında bu formun içerisindeki bir butonun tetiklenmesini istiyorsanız yine <form> elementinin defaultbutton özelliğini kullanabilirsiniz. Aşağıdaki kod parçalarını bir sayfa üzerinde test ederseniz durum gayet açık şekilde anlaşılacaktır :)

Default.aspx

<form id="form1" runat="server" defaultbutton="button1">

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

<asp:Button ID="button1" runat="server" Text="Button-1" OnClick="btn_Click" />

<br />

<asp:Panel ID="panel1" runat="server" BackColor="LightGreen" DefaultButton="button2" Width="300">

<asp:TextBox ID="text1" runat="server"></asp:TextBox>

<asp:Button ID="button2" runat="server" Text="Button-2" OnClick="btn_Click" />

</asp:Panel>

<asp:Panel ID="panel2" runat="server" BackColor="LightBlue" DefaultButton="button3" Width="300">

<asp:TextBox ID="text2" runat="server"></asp:TextBox>

<asp:Button ID="button3" runat="server" Text="Button-3" OnClick="btn_Click" />

</asp:Panel>

</form>
Default.aspx.cs

protected void btn_Click(object sender, EventArgs e)

{

Response.Write("Tıklanan buton: " + ((Button)sender).Text);

}

Google SEO Rehberi (40 dilde)

http://googlewebmastercentral.blogspot.com/2009/06/seo-starter-guide-now-available-in-40.html adresinde Google tarafından 40 dilde hazırlanmış Search Engine optimization (Arama Motoru Optimizasyonu, SEO) Rehberi mevcut.

Master Page içinde lblDeneme isimli bir Label olsun. Content page içinden bu nesneye erişmek için geçici bir nesne oluşturuyoruz ve FindControl metodu ile asıl nesneye ulaşıyoruz:

Label tmpLabel = (Label)this.Master.FindControl("lblDeneme"); Sonra tmpLabel üzerinde istediğimiz değişiklikleri yapıyoruz:

tmpLabel.Text = "...";