我正在尝试在 C# windows 窗体中实现模型视图演示者模式。我尝试了几种不同的方法,但还没有弄清楚。当用户单击文本框时,是否有“接受”来自文本框的用户输入?如果没有,将数据传递给演示者的典型方法是什么?我可以使用文本框的 on_text_changed 事件,但是我对如何验证数据感到困惑。
问问题
385 次
3 回答
1
我知道这个线程太旧了,但仍然。
public interface IProjectView
{
string textBoxText{get;}
}
在 ProjectView 中实现
public class ProjectView : IProjectView
{
ProjectPresenter _presenter;
public ProjectView()
{
_presenter = new ProjectPresenter(this);
}
string textBoxText
{
get
{
// Do validation if you want
return textBox1.Text;
}
}
}
class ProjectPresenter
{
IProjectView _view;
public ProjectPresenter(IProjectView view)
{
_view = view;
}
public void AnyMethod()
{
// Access value of textbox as _view.txtTextBoxText
}
}
代码未经测试,但应该可以正常工作。
关于验证,在 ProjectView 中实现属性时,在返回值之前进行验证。
于 2012-07-23T09:25:48.683 回答
1
于 2012-04-09T00:45:28.553 回答
0
你会想听Leave
事件。当文本框失去焦点时会发生这种情况;之后,您可以进行验证。
于 2012-04-09T01:20:43.287 回答