• 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 逐帧动画isRunning 一直返回true的问题
    android动画学习
    android信号强度
    在代码中创建Drawable资源
    通过ComponentName获取相应的Widget
    EditText和输入法相关的问题
    Android 沉浸式状态栏
    安防设置功能出现的错误
    自定义seekbar
    android 新控件 AppBarLayout 使用
  • 原文地址:https://www.cnblogs.com/jintan/p/1273723.html
Copyright © 2020-2023  润新知