问题标签 [mvvm-light]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
166 浏览

mef - 如何参数化视图中的导入?

我正在寻求一些帮助,我希望那里的一些好人能给我一个提示:)

我正在使用 MVVM Light 构建一个新应用程序。在此应用程序中,当创建视图时,它会使用 MEF 导入实例化相应的 ViewModel。

这是一些代码:

这是 ViewModel 的导出:

现在,如果我想打开一个新窗口以创建新合同,这很有效……或者换句话说,如果我不需要传递现有合同的 ID,那就完美了。

但是,假设我想使用相同的视图来编辑现有合同。在这种情况下,我将向同一个视图添加一个新的构造函数,它接受模型 ID 或模型对象。

“不幸的是” ViewModel 总是以相同的方式创建:

据我所知,这会在合成时调用相应 ViewModel 的标准/无参数构造函数。

那么我想知道的是如何区分这种行为?如何在合成期间调用特定的构造函数?或者如何在导入期间传递一些参数?

如果这个问题听起来很愚蠢,我真的很抱歉,但我最近才开始使用 MEF!

提前致谢,

干杯,吉安卢卡。

0 投票
1 回答
5032 浏览

silverlight - Silverlight dataform MVVM 命令绑定更新

我是 MVVM 和 Silverlight 的新手,我只是想找出一个简单的场景。

我正在使用没有 Expression Blend 的 MVVM Light 工具包和 Silverlight 3.0。

我有一个 DataGrid 和一个 DataForm 绑定到 ViewModel 中的可观察集合。RelayCommand Save()在对 DataForm 控件中的数据进行更改后,我想绑定到我的属性,并在不使用视图背后的代码的情况下完成此操作。

DataForm 不使用cmd:ButtonBaseExtensions.CommandMVVM Light 用于普通按钮单击命令绑定的那个,所以我不确定如何将控件绑定到我的 ViewModel。

任何帮助表示赞赏!

0 投票
1 回答
1690 浏览

wpf - MVVM-Light ViewModelLocator 可以在嵌套的 ViewModel 中使用吗?

Visual Studio 2008 设计器似乎不喜欢引用 MVVM-Light ViewModelLocator 的 UserControl。我收到一条错误消息,例如:

无法创建“MyUserControl”类型的实例。

例如,如果 MyUserControl 使用 ViewModelLocator 建立其 DataContext,则以下 XAML 将导致此行为。

MyUserControl 非常简单:

而“MyNestedViewModel”属性只是实例化了 MyNestedViewModel 类的一个实例,它的默认构造函数中绝对没有代码。

两个问题:

  1. 我正确使用 ViewModelLocator 吗?也就是说,它可以在嵌套视图中使用还是仅用于顶级视图?
  2. 这可能只是 Visual Studio 2008 设计器 Cider 中的另一个错误吗?

请注意,一切都在运行时完美运行。我只在设计时遇到问题。但我讨厌盲目编码 XAML。

0 投票
2 回答
796 浏览

silverlight - windows phone 7 上带有 mvvm 灯的动画

我有一个有趣的问题。假设我想从视图模型播放动画或更改视图的视觉状态等。我怎样才能做到这一点?它用于在 windows phone 7 上构建 MVVM 应用程序。

0 投票
3 回答
2622 浏览

wpf - MVVM-Light:将 UserControl 加载到窗口中

使用 MVVM-Light 将 UserControl 加载到窗口中的最佳做法是什么?在哪里创建 UserControl 实例,在 ViewModel from Window 中还是直接在窗口中?

0 投票
2 回答
229 浏览

wpf - 如何根据命令请求创建和显示视图?

我已经开始使用 mvvm-light 工具包,并且是 WPF 的新手。

我的问题是:我想创建一个应用程序,其中主窗口包含一个带有 2 列 1 col 命令的网格,并且 col2 将在按下每个命令时显示视图。我希望根据命令创建视图并从它自己的视图中获取。

我试图弄清楚如何做到这一点,但没有成功。

我不知道如何使用 mvvm light 编写这种功能。

我只知道如何使用主视图创建主窗口,而另一个视图已在加载时创建。

请帮帮我。。

我正在使用 2008 WPF3.5

雪莉。今天让我开心..我刚刚开始这一周!!!

感谢你。我已经做到了,结果得到了当前 ViewModel“LU.ViewModel.AllChannelsViewModel”的 Tostring(),而不是真正的视图。

我要加载的视图是:我正在使用 mvvm-light

我在这里想念什么?如何显示我想要的真实视图而不是视图模型的名称?

雪莉

0 投票
1 回答
1330 浏览

windows-phone-7 - Windows Phone 的 RaisePropertyChanged

我开始使用 MVVMLight 框架,并且有一个关于绑定到 ViewModel 中的属性的问题。我发现我必须在属性的设置器中调用 RaisePropertyChanged 方法才能更新视图。而且我必须通过调度程序调用 RaisePropertyChanged,否则我会收到线程访问错误。

这可行,但它有很多代码来获取自动绑定属性。有没有帮助更干净地处理这个问题?

0 投票
3 回答
2569 浏览

binding - 为什么设置的时候

我正在使用 mvvm-light。我正在尝试使用一侧的命令按钮和另一侧的视图占位符创建应用程序。

当我尝试通过命令创建视图时,我得到了 ViewModel 的 ToString 名称。

例如:LU.ViewModel.ChannelsViewModel

我错过了什么?

这是我的代码:

主窗口

新频道

资源:

主窗口中显示的 CustomerViewModel 类。-->

频道视图


SVN 在我提交时总是出错(Subclipse)

我在我的服务器上设置了 svn,在家里设置了 Subclipse。我是唯一的开发人员,主要将其用于备份和版本控制功能。

每次我提交更改时,我都会得到八倍:

或者

有时我什至删除文件并且它们不会在 svn 上删除,在目录层次结构中,只有最后一项会删除,所以我必须一次删除每个文件夹。

以后如何避免这些错误?

更新: 我遇到的另一个问题是,有时 eclipse 似乎与服务器同步,因此当我重构文件名时,它会转到服务器并执行某些操作并让我等待,这很烦人。

为了清楚起见,这是一个典型的操作:我可能会更改文件名,将文件移动到不同的文件夹,然后更改文件的内容。我选择“团队菜单”并单击“提交”。然后我得到上面所有这些错误。

0 投票
1 回答
779 浏览

.net - 如何在 mvvm-light 中关闭 UserControl 视图?

我用 mainView 和其他 2 个视图(用户控件)创建了一个示例。我在子视图上放置了一个“关闭”按钮,我想关闭该视图。该按钮附加了一个命令,当按下关闭时,我要求 ViewModelLocator 清理它。

但是-视图仍在显示..我做错了什么?如何使用 mvvm-light 关闭 userControl 视图?

ViewModelLocator 函数:

0 投票
1 回答
1159 浏览

.net-3.5 - 使用 MEF + MVVM light toolkit 时组成零件的理想场所?

现在我正在开发使用 MEF 和 MVVM 轻型工具包的较新应用程序,我遇到了无法加载特定插件的情况,因为它们依赖于未导出的部分。该部分没有被导出,因为它是一个视图,并且该视图尚未通过 MEF 解析。

似乎每次玩MEF时,我都需要将部件组合步骤(即创建容器、目录,然后组合部件)越来越靠近主应用程序。我相信我现在就是那个时候。但是,问题是我不确定该放在哪里。

我想把它放在 MainWindow,我相信它是由 MVVM light takeit 项目模板创建的。我Export在 MainViewModel 和 Model 上使用了该属性。我在 ViewModelLocator 中导入 ViewModel,并在 ViewModel 中导入模型。对我来说,这似乎足以确保所有内容都正确组合。然而,虽然 ViewModel 是正确组合的(它命中了它的构造函数),但 Model不是. 我在合成过程中检查了输出窗口,但那里没有出现任何 MEF 错误。

总而言之,这些是我的问题: 1. 组成部分的“正确”位置在哪里?在 WPF / MVVM 的情况下,它总是在应用程序的开头吗?2. 在输出窗口中没有 MEF 错误的情况下,还有哪些其他技术可以找出问题没有得到解决的原因?通常,我会一路浏览 Compose 以尝试获得一些见解。还有比这更好的调试技术吗?3. 你能想到为什么我的模型加载不出来吗?4、有没有好的MEF+MVVM轻工具包项目可以下载学习?