当前位置: 代码迷 >> C# >> 关于两个文本框焦点的有关问题,两个文本框的值有数值关系
  详细解决方案

关于两个文本框焦点的有关问题,两个文本框的值有数值关系

热度:103   发布时间:2016-05-05 04:31:24.0
关于两个文本框焦点的问题,两个文本框的值有数值关系
在一个对话框上,有两个文本框Text box,例如:A1和A2,A2 = A1 + 5  ,以及一个OK键。

现在希望做到下面的效果:
1.    如果光标在A1这里,在A1中输入一个值,然后点击OK,那么A2的值自动变化为A1+5,然后关闭对话框;

2.  如果光标在A2这里,在A2中输入一个值,然后点击OK,那么A1的值自动变化为A2-5,然后关闭对话框。

目前的做法是做了两个Button,分别是基于A1和基于A2的,分别实现上面的两种效果,但是这样子不太好,还是做成一个button好一点,应该怎么办呢?求助·····感激······



------解决思路----------------------
定义一个变量i,在A1的TextChanged事件让i=1,在A2的TextChanged事件中让i=-1,在button的click事件中分别对i的值进行判断,i==1时A2=A1+5,i==1时A1=A2-5
------解决思路----------------------
1.简单的方法就是在text changed事件里面处理你的逻辑
2.使用观察者模式来监控A1,A2的变化来实现两个文本框值的改变· 
------解决思路----------------------
一个button  也行。不知道是Winform项目?
是的话  可以再  btn事件中 判断那个textbox 获取了焦点,比如:
if(A1.Focused()){
      A2= A1 + 5;
}
if(A2.Focused()){
   
}

------解决思路----------------------
其实完全可以不用button的嘛..还可以简化用户操作
  相关解决方案