Kontrollere fokuslama

Sayfamızdaki kontrolleri nasıl aktif hale getirebiliriz, çeşitli yöntemler.

Kontrollere Fokuslama

textbox focus

Sayfa ilk açıldğında veya istediğiniz bir durumda sayfanızdaki herhangi bir kontrolü aktif hale getirmek isteyebilirsiniz.

Bunun için kullanabileceğiniz çok basit bir metod var:

TextBox1.Focus();

Javascript ile:

Page.RegisterStartupScript("SetFocus", "<script>document.getElementById('" + TextBox1.ClientID + "').focus();</script>");

Ancak zaman zaman bu metodun işlemediğine tanık olabilirsiniz. Modalpopup, updatepanel içerisinde sıkıntılı çalışabiliyor.

O zaman kullanmanız gereken kod şu şekilde olmalı.

Sitenizde Masterpage ve ToolkitScriptManager i kullanıyorsanız;

Masterpagemiz:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
...
...
<body>
<form id="form1" runat="server">
<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" >
</ajaxToolkit:ToolkitScriptManager>
...
...

Codebehind tarafına bir property ekleriz:

public AjaxControlToolkit.ToolkitScriptManager MyScriptManager
{
  get
   {
     return ToolkitScriptManager1;
   }
}

Ve artık istediğimiz yerde toolscriptmanager üzerinden istediğimizi gerçekleştirebiliriz:

MasterPage master = this.Master as MasterPage;
master.MyScriptManager.SetFocus(TextBox1);

Bu yöntemin kesinlikle çalışacağına emin olabilirsiniz. :)