Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 共同的看法。视图+;视图模型还是用户控件?_Wpf_Mvvm_User Controls_Shared Libraries_Viewmodel - Fatal编程技术网

Wpf 共同的看法。视图+;视图模型还是用户控件?

Wpf 共同的看法。视图+;视图模型还是用户控件?,wpf,mvvm,user-controls,shared-libraries,viewmodel,Wpf,Mvvm,User Controls,Shared Libraries,Viewmodel,我正在开发一个小实用程序视图,它将嵌入到我们的几个应用程序中。它将放在一个公共图书馆里 我应该将其公开为带有默认视图实现的ViewModel,还是作为带有固定GUI的用户控件更好 它是非常独立的,我怀疑它是否需要重新设计,但是作为一个用户控件来设计它似乎有点过分,因为它需要设置大量的依赖属性 一个简单的视图模型似乎对我更有吸引力,但我想知道这是否是分享东西的正常方式 编辑: 如果我也能将其嵌入WinForms应用程序中,那就太好了。这在View/ViewModel中可能吗?嗯,最后我选择了Vie

我正在开发一个小实用程序视图,它将嵌入到我们的几个应用程序中。它将放在一个公共图书馆里

我应该将其公开为带有默认视图实现的ViewModel,还是作为带有固定GUI的用户控件更好

它是非常独立的,我怀疑它是否需要重新设计,但是作为一个用户控件来设计它似乎有点过分,因为它需要设置大量的依赖属性

一个简单的视图模型似乎对我更有吸引力,但我想知道这是否是分享东西的正常方式

编辑:
如果我也能将其嵌入WinForms应用程序中,那就太好了。这在View/ViewModel中可能吗?

嗯,最后我选择了View/ViewModel。这很好地保持了分离,并且很容易插入到现有的MVVM项目中

它在WinForms中也可以正常工作,因为视图只是一个
UserControl
,其
DataContext
设置为某个任意对象(ViewModel)

我遇到的唯一一个小问题是,
Application.Current
未在表单环境中设置,因此我必须存储GUI dispatcher引用,以便将GUI更新封送到ViewModel中的适当线程