wp中TextBox在中文输入法下清空问题_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > wp中TextBox在中文输入法下清空问题

wp中TextBox在中文输入法下清空问题

 2013/8/8 17:09:59  流浪的虫子  博客园  我要评论(0)
  • 摘要:如图,在中文输入法下我希望点击“X”,然后把TextBox清空,一般来说,直接用TextBox.Text="";或者TextBox.Text=String.Empty;就可以清空,但是在中文输入法的状态下,这个操作这是相当于按了软键盘的“确定”键。TextBox里面显示为“jfshhgsjnf”,需要我再点多一次清除按钮才能清空。很显然,直接写两句TextBox.Text="";或者TextBox.Text=String
  • 标签:问题 输入法

如图,在中文输入法下我希望点击“X”,然后把TextBox清空,一般来说,直接用TextBox.Text = "";或者TextBox.Text = String.Empty;就可以清空,

但是在中文输入法的状态下,这个操作这是相当于按了软键盘的“确定”键。TextBox里面显示为“jfshhgsjnf”,需要我再点多一次清除按钮才能清空。

很显然,直接写两句TextBox.Text = "";或者TextBox.Text = String.Empty;也是不行的,这就需要在两次操作之间留个时间间隙,当然,时间也不可以

太短。这个可以用DispatcherTimer实现。

       但是,如果你的TextBox中有Hint属性的,第一次TextBox.Text = "";后会造成Hint语句出现,然后text内容和Hint语句在一定时间内重叠,影响体验,可以对

TextBox进行赋值处理。

                string value = textBox1.Text;
                this.textBox1.Text = "";
                this.textBox1.Text = value;
                DispatcherTimer time = new DispatcherTimer();
                time.Interval = TimeSpan.FromMilliseconds(200);
                time.Tick += time_Tick;
                time.Start();

               void time_Tick(object sender, EventArgs e)
              {
                   this.textBox1.Text = "";
                   DispatcherTimer time = sender as DispatcherTimer;
               time.Stop();
              }

发表评论
用户名: 匿名