精华内容
下载资源
问答
  • C# TextBox获取焦点
    2021-10-29 14:25:57

    有两种方法:
    1.this.ActiveControl = TextBoxName;
    2.this.TextBoxName.Focus();

    更多相关内容
  • 主要介绍了C#递归遍历窗体所有textbox控件并设置textbox事件的方法,包括针对textbox控件的递归遍历技巧与事件方法的设置技巧,需要的朋友可以参考下
  • C#TextBox 失去与获取焦点事件

    万次阅读 2014-09-07 21:00:27
    0 textBox5.LostFocus += new EventHandler(txt_LostFocus); textBox5.GotFocus += new EventHandler(txt_GotFocus); textBox5.MouseClick += new MouseEventHandler(textBox5

    C#TextBox 失去与获取焦点事件

                textBox5.LostFocus += new EventHandler(txt_LostFocus); //失去焦点后发生事件
                textBox5.GotFocus += new EventHandler(txt_GotFocus);  //获取焦点前发生事件
                textBox5.MouseClick += new MouseEventHandler(textBox5_MouseClick); // 鼠标点击事件


    上面三个委托 可以完全得到想要的效果了.

    小诀窍: 在 输入  += 后,按两次  Tab 键,就会出现后面的

    new EventHandler(txt_LostFocus);

    还有个

            void txt_LostFocus(object sender, EventArgs e)
            {
                txtInput(textBox5);
            }

    也会自动出现

    在里面输入自己想要的代码就可以..

    展开全文
  • C# winform textbox弹出窗体 控制了位置,不会遮挡住文本框内容
  • 文本框失去焦点事件获得焦点事件 onBlur:当失去输入焦点后产生该事件 onFocus:当输入获得焦点后,产生该文件 Onchange:当文字值改变时,产生该事件 Onselect:当文字加亮后,产生该文件 onpropertychange 当属性...
  • TextBox元素获得焦点时,可以用SelectAll()来选择已有文字,但不能直接用SelectAll()就得到想要的效果。其中一种方式是通过PreviewMouseDown\GotFocus\LostFocus的多个事件来完成,逻辑有些繁琐。每次都写这些就造成...

    TextBox元素获得焦点时,可以用SelectAll()来选择已有文字,但不能直接用SelectAll()就得到想要的效果。其中一种方式是通过PreviewMouseDown\GotFocus\LostFocus的多个事件来完成,逻辑有些繁琐。每次都写这些就造成代码重复,因此我写了一个附加属性类来解决这个问题。

    本文利用创建的WPF附加属性来获得该功能:即在Text获得焦点的时候,全部选择textbox中已经存在的内容。

        /// <summary>
        /// 当 TextBoxBase获得焦点的时候,自动全部选择文字。附加属性为SelectAllWhenGotFocus,类型为bool.
        /// </summary>
        public class TextBoxAutoSelectHelper
        {
            public static readonly DependencyProperty SelectAllWhenGotFocusProperty =DependencyProperty.RegisterAttached("SelectAllWhenGotFocus", 
                                typeof(bool), typeof(TextBoxAutoSelectHelper),
                                new FrameworkPropertyMetadata((bool)false,new PropertyChangedCallback(OnSelectAllWhenGotFocusChanged)));
    
            public static bool GetSelectAllWhenGotFocus(TextBoxBase d)
            {
                return (bool)d.GetValue(SelectAllWhenGotFocusProperty);
            }
            public static void SetSelectAllWhenGotFocus(TextBoxBase d, bool value)
            {
                d.SetValue(SelectAllWhenGotFocusProperty, value);
            }
    
            private static void OnSelectAllWhenGotFocusChanged(DependencyObject dependency, DependencyPropertyChangedEventArgs e)
            {
                if (dependency is TextBoxBase tBox)
                {
                    var isSelectedAllWhenGotFocus = (bool)e.NewValue;
                    if (isSelectedAllWhenGotFocus)
                    {
                        tBox.PreviewMouseDown += TextBoxPreviewMouseDown;
                        tBox.GotFocus += TextBoxOnGotFocus;
                        tBox.LostFocus += TextBoxOnLostFocus;
                    }
                    else
                    {
                        tBox.PreviewMouseDown -= TextBoxPreviewMouseDown;
                        tBox.GotFocus -= TextBoxOnGotFocus;
                        tBox.LostFocus -= TextBoxOnLostFocus;
                    }
                }
            }
            private static void TextBoxOnGotFocus(object sender, RoutedEventArgs e)
            {
                if (sender is TextBoxBase tBox)
                {
                    tBox.SelectAll();
                    tBox.PreviewMouseDown -= TextBoxPreviewMouseDown;
                }
    
            }
            private static void TextBoxPreviewMouseDown(object sender, MouseButtonEventArgs e)
            {
                if (sender is TextBoxBase tBox)
                {
                    tBox.Focus();
                    e.Handled = true;
                }
            }
    
            private static void TextBoxOnLostFocus(object sender, RoutedEventArgs e)
            {
      
                if (sender is TextBoxBase tBox)
                {
                    tBox.PreviewMouseDown += TextBoxPreviewMouseDown;
                }
    
            }
        }

    使用方法如下:

    (1)使用Style,以下是直接放在元素中的,更直接的放在窗口的资源中,或资源字典中

                <TextBox Text="{Binding xxx}">
                   <TextBox.Style>
                       <Style TargetType = "TextBox" >
                          < Setter Property="local:TextBoxAutoSelectHelper.SelectAllWhenGotFocus" Value="True"/>
                      </Style>
                   </TextBox.Style>
               </TextBox>

    (2)或者直接使用元素的附加属性

     <TextBox local:TextBoxAutoSelectHelper.SelectAllWhenGotFocus="True"  Text="{Binding xxx}"/>

    ---->以上两种使用方法中的local都是代表命名空间的,具体根据实际情况即可。

    补充:

    (1)对于TextBox,如果之间没有获得焦点,然后要通过鼠标单击来获得焦点,其处理过程表现为:鼠标单击TextBox时,会首先产生PreviewMouseDown事件,处理完PreviewMouseDown事件后,TextBox会获得焦点并进一步产生GotFocus事件。如果在PreviewMouseDown中禁止掉事件进一步传播(e.Handle=true),那么TextBox就不会获得焦点,也不会激发GotFocus事件及其它后续事件。

    (2)TextBox的先后产生的与鼠标点击有关的事件包括:PreviewMouseDown,GotFocus,PreviewMouseUp,MouseUp;对于我们想象中应该产生的MouseDown事件,测试过程中无论怎么做都没有激发MouseDown事件。建议尽量不使用PreviewMouseUp和MouseUp事件,其原因如下第(3)和第(4)条所示。

    (3)对于TextBox的PreviewMouseUp事件,不建议使用,可能时BUG还是怎么回事。用了以后,整个界面点击任何位置,都只响应该TextBox的事件,其它事件都无法响应了。及时点击关闭窗口的按钮,也是仅仅响应该TextBox的事件,窗口都关闭不了。个人认为是Bug,不知道理解是否正确。

    (4)对于TextBox的MouseUp事件,在测试过程中,有时是正常激发的,有时必须要点击TextBox的边框附近才会激发,而点击TextBox的内部不会激发。下图是官方文档中关于Mouse事件的说明:

    (5)对于直接使用GotFocus事件来SelectAll()之所以不成功,个人理解是因为:在PreviewMouseDown事件传输过程中,TextBox先获得了焦点,并激发GotFocus事件。然后PreviewMouseDown会进一步向内传输,在此过程中TextBox还会进一步处理鼠标位置信息,并设置光标位置。正因为设置了光标的位置,这又会导致已经选择的文本被取消选择了。所以,为了获得自动选择文字的功能,就在PreviewMouseDown中主动SetFocus(注:这回激发GotFocus事件,在事件处理方法中SelectAll()),并禁止PreviewMouseDown事件进一步向TextBox的更深层次元素传播(e.Handled=true)。

    (以上一些结论是根据现象推理的,由于水平有限,如有不准确,还请读者见谅)

     

     

    展开全文
  • 1.代码中定义textBox_MouseClick事件处理 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; ...

    1.在代码中定义textBox_MouseClick事件处理

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using WindowsFormsApplication1.util;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    		
            private void textBox_MouseClick(object sender, MouseEventArgs e)
            {
                if (textBox1.Focused)
                {
                    textBox1.BackColor = Color.Cyan;
                }
                else
                {
                    textBox1.BackColor = Color.Teal;
                }
    
                if (textBox2.Focused)
                {
                    textBox2.BackColor = Color.Cyan;
                }
                else
                {
                    textBox2.BackColor = Color.Teal;
                }
    
            }
        }
    }
    
    

    2.为控件添加textBox_MouseClick事件
    在这里插入图片描述

    展开全文
  • C#winform中textbox得到焦点和失去焦点

    千次阅读 2020-12-23 16:57:21
    编写winform程序的时候,当使用到textbox文本框这个控件,就可能会用到得到焦点和失去焦点时引发事件。 得到焦点 textbox.GotFocus+=new EventHandler((obj, ex) => {//你要执行的代码块 }); 失去焦点 textbox....
  • WPF的TextBox的LostFocus事件中直接使用Focus()方法会出现死循环的问题正确的使用方式有2中方法:方法一:privatevoidtextBox3_LostFocus(objectsender,RoutedEventArgse){if(textBox3.Text!="abc"){this....
  • 获得焦点就是tBox.Focus(),失去焦点的方法没有找到, 只是找到了失去焦点事件 : Private Sub tBox_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tBox.Leave End Sub vb.net...
  • WinForm多个TextBox失去焦点事件解决

    千次阅读 2017-10-21 18:54:56
    1、问题描述:  Winorm中的2个TextBox控件LostFocus事件弹出... 焦点在TextBox1中点击TextBox1,事件执行情况:TextBox1的LostFocus Messagebox.Show()时->TextBox2的LostFocus事件弹出MessageBox.Show()确认后-
  • Winform 窗体获得焦点

    2019-02-28 14:39:00
    窗体添加Shown事件 public void Form_Shown(object sender, EventArgs e) { this.Activate(); this.Focus(); //定义窗体中某控件获取焦点 this.textbox.Focus(); } 转载于:...
  • 进入窗口后默认聚焦到某个文本框,两种方法: ①设置tabindex ...Form的Activated事件中添加textBox1.Focus(), 即可获得焦点。   1 2 3 4 private void Form...
  • vbnet无焦点窗口,累死软键盘的窗体效果,直接代码资源和实例
  • TextBox获得焦点有几个前提:1. TextBox所属的窗体(Form)可操作(Active...所以Form的Activated事件中添加TextBox.Focus(),即可获得焦点。若TextBox存在数据,Focus()后会全选中。取消全选可用: TextBox.Select...
  • WPF中实现一个弹出层自动获取焦点,弹出层实现是通过其UserControl的依赖属性Visibility的绑定实现的,让UserControl上的TextBox获取焦点,初始实现代码如下:public Visibility IsVisibile{get { return ...
  • There is no LostFocus event for textbox in property Window,if you want to use this then you must need to add event handler. For example, there is textbox onLostFocus event in property window, that ...
  • 问题:如何让textbox一直获得焦点? 万一有人点了别的地方,例如datagridvie的某一个格子 ,隐藏的textbox就无法获取卡号,又因为是隐藏的,无法手动点回。 datagridvie 里面有很多列,有一个列示可以编辑的,...
  • 两个文本框 一个事用户名 一个是密码 里面有初始内容 得到焦点就把内容清空 失去焦点就判断输入的内容是否大于6 如果大于则作出相应的提示
  • winform窗口打开后文本框的默认焦点...Form的Activated事件中添加textBox1.Focus(), 即可获得焦点。 private void Form1_Activated(object sender, EventArgs e) { textBox1.Focus(); } TextBox是可以获得焦点
  • 由于DateTimePicker不能赋空值,用此方法可以置默认日期值为空 ...拖控件,将TextBox控件和DateTimePicker控件拖同一位置,重复覆盖 3.代码如下: public partial class Form1 : Form { ...
  • 正确流程是:当所在单位的文本框失去焦点时会查到该单位的id然后后台获取这个id, 但现在有这样一种情况,文本框还没有失去焦点,直接去点击注册,这样会导致id获取不到,后台进行数据转换时就会出错了
  •   <asp:TextBox ID="VotesNoTextBox" runat="server" Text="多个票号请用“,”逗号隔开。" Style="width: 80%;  color: Gray" CssClass="inputcss" onfocus="cls()" onblur="res()" TextMode=...
  • 第一种: Txt_CustomerID.Attributes.Add("onfocusout", "CheckID(CustomerID);... 给TextBox添加失去焦点事件,执行客户端方法,轻量级,但是保存状态比较繁琐。第二种: CustomerIDTextBox.Attr
  • C# Winform设置焦点focus(textbox

    万次阅读 2020-03-11 21:41:37
    这与 textbox 聚焦的方式之一相关,当 textbox 被第一个拉到 Form 窗体时,textbox 会自动聚焦,反之不会,具体原因将下文介绍。  C# Winform设置焦点有两种方法,一种是用 Focus() 方法实现,另一种是通过控件...
  • 玩转C#窗体-属性、方法和事件详细说明

    千次阅读 多人点赞 2020-11-10 10:26:55
    文章目录简介Windows窗体的基本属性一、布局属性1、StartPosition属性2、Location属性3、尺寸属性4、WindowsState属性5、Autoscroll属性6、AutoSize属性二、样式属性1、ControlBox属性2、MaximizeBox属性3、...
  • //回车后获得焦点事件 enterEvent() });  //回车后,下一个文本输入框将会获得焦点,并选中 function enterEvent(){ //$(function() {}) 是$(document).ready(function()的简写。DOM加载完毕之后执行 ...
  • ❤很多时候我们需要控件失去焦点之前,再去判断其内容,比如说:想限制TextBox控件中内容为0-10的数字(你也可以用键盘Key事件,这个另说),想把ComboBox新输入的内容加入到列表选项中时,Validate事件就是很不错...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,808
精华内容 1,923
关键字:

在窗体textbox获得焦点事件