我想知道如何最好地实现Presentation Model模式。我读过关于MVVM的文章,但不适用于我,因为我没有使用Silverlight或WPF。
发布于 2012-09-14 04:25:18
Update Controls在Windows Forms中实现了“表示模型”模式。您可以使用独立字段编写模型类。
public class Person
{
private Independent<string> _first = new Independent<string>();
private Independent<string> _last = new Independent<string>();
public string First
{
get { return _first; }
set { _first.Value = value; }
}
public string Last
{
get { return _last; }
set { _last.Value = value; }
}
}然后编写一个具有常规属性的表示模型。
public class PersonPresentationModel
{
private Person _person;
public PersonPresentationModel(Person person)
{
_person = person;
}
public Person Person
{
get { return _person; }
}
public string FullName
{
get { return _person.Last + ", " + _person.First; }
}
}处理Windows窗体控件中的事件以从演示模型中获取数据。
private string FirstName_GetText()
{
return _presentationModel.Person.First;
}
private void FirstName_SetText(string value)
{
_presentationModel.Person.First = value;
}
private string LastName_GetText()
{
return _presentationModel.Person.Last;
}
private void LastName_SetText(string value)
{
_presentationModel.Person.Last = value;
}
private string FullName_GetText()
{
return _presentationModel.FullName;
}更新控件将跟踪依赖项,并在模型更改时更新Windows窗体控件。它甚至会通过表示模型来查看它所依赖的内容。
发布于 2009-08-17 15:43:26
您可能对MVP (模型视图呈现器)和依赖它的丰富应用程序框架感兴趣,如CAB (来自MS Pattern & Practice team的组合UI应用程序块)
使用MVP,您可以拥有一个表示模型并利用winform数据绑定。
Jeremy D. Miller blog是关于这种设计和所有其他UI模式的一个很好的信息来源。
https://stackoverflow.com/questions/1288508
复制相似问题