zoukankan      html  css  js  c++  java
  • Set Focus to Control

    I was trying to set focus using the code

    this.ScriptManager1.SetFocus(myControlName.ClientID);

    and I wrote this code in my SelectedIndexChanged Event Function. That time this code didn't work.

    Now I changed this code to Page Load Function i.e.
    protected void Page_Load(object sender, EventArgs e)
    {
        
    if (!IsPostBack)
        {
            
    this.ScriptManager1.SetFocus(myControlName.ClientID);
        }
        
    else
        {
            
    this.ScriptManager1.SetFocus(GetPostBackControl(this.Page).ClientID);
        }



    Here I am using a function GetPostBackControl() to identify the current postbacking control and I am setting focus to the same control. If you want to move focus to any other control, just use a Switch Statment.
    public static System.Web.UI.Control GetPostBackControl(System.Web.UI.Page page)
    {
        Control control 
    = null;
        
    string ctrlname = page.Request.Params["__EVENTTARGET"];
        
    if (ctrlname != null && ctrlname != String.Empty)
        {
            control 
    = page.FindControl(ctrlname);
        }
        
    // if __EVENTTARGET is null, the control is a button type and we need to 
        
    // iterate over the form collection to find it 
        else
        {
            
    string ctrlStr = String.Empty;
            Control c 
    = null;
            
    foreach (string ctl in page.Request.Form)
            {
                
    // handle ImageButton controls  
                if (ctl.EndsWith(".x"|| ctl.EndsWith(".y"))
                {
                    ctrlStr 
    = ctl.Substring(0, ctl.Length - 2);
                    c 
    = page.FindControl(ctrlStr);
                }
                
    else
                {
                    c 
    = page.FindControl(ctl);
                }
                
    if (c is System.Web.UI.WebControls.Button ||
                c 
    is System.Web.UI.WebControls.ImageButton)
                {
                    control 
    = c;
                    
    break;
                }
            }
        }
        
    return control;
    }

  • 相关阅读:
    Android 去除最上面应用名称及图标
    Android 仿QQ消息界面
    多线程断点续传及下载
    android 断点下载---XUtils
    Android判断网路是否畅通加权限
    Android_按两次返回键退出程序和长按返回键退出程序
    Android JPush(极光推送)的使用教程
    使用VS2013自带的PreEmptive Dotfuscator and Analytis来混淆C#代码
    Entity Framework 6连接Oracle、Postgresql、SQLite、LocalDB数据库字符串详解
    Fluent Nhibernate 数据库配置
  • 原文地址:https://www.cnblogs.com/jintan/p/1273723.html
Copyright © 2011-2022 走看看