这可能是一个简单的问题,但我似乎无法让它发挥作用。我有一个View模型,它公开了一个名为boolNotFound的属性,我想将其绑定(bind)到触发器,以便当它更改我的控件上的图像时发生更改。这是我用作我的一个View模型的数据模板的xaml。我希望能够将绑定(bind)到NotFound属性并更改图像源。 最佳答案 一切都很好,我想通了。 关于c#-使用触发器WPFMVVM更改图像,我们在StackOverflow上找到一个类似的问题: https://s
在MVVMWPF应用程序中。如何从ViewModel设置第二个窗口父级?例子:view1--viewModel1viewModel1的命令调用:varview2=newview2view2.Owner=viewModel获取view1作为所有者?view2.Show()编辑:请参阅下面已接受的答案,然后阅读以下编辑内容。我正在使用MVVMlight->http://mvvmlight.codeplex.com/(顺便说一句)内置的消息传递系统很棒。我现在从View模型向我的View发送一条消息,告诉它显示另一个窗口。对于消息,我目前在主视图中使用带有switch语句的字符串来确定打开哪
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我可以使用吗?在WPFMVVM中而不是在Silverlight中。我遇到的所有示例都显示了的使用在Silverlight中。如何在WPF中使用它?我正在使用MVVM模型。
我的WPF应用程序中有一个列表框。我知道如何使用selectionchanged事件。但是我正在尝试遵循MVVM设计。但是我不确定该怎么做。我已经为一个按钮做了这个但是不确定我是否可以做同样的事情?publicclassViewModel:INotifyPropertyChanged{//forthebuttonthatimportstheordersfilepublicICommandCommandButtImport{get;set;}publicViewModel(){CommandButtImport=newMyCommands(ExecuteCommandButtImport
我正在尝试创建一种策略来处理弹出式表单,以便在我的应用程序的任何部分使用。到目前为止,我的理解是我需要一个UserControl在我的主窗口的根目录中。这将绑定(bind)到它自己的ViewModel,后者将处理在应用程序内发送的消息。我正在使用MVVMLight,而且我对Messenger还很陌生类。想象一个Master/Details场景,其中对象列表包含在ListBox中.选择其中一项并单击“编辑”按钮将显示UserControl覆盖整个屏幕。然后用户可以编辑所选项目,然后单击“确定”以提交更改。我想要UserControl它以一种我可以向它抛出任何(可能是一个ViewModel
我有一个包含一些数据的WPFDataGrid。我想设置列的宽度,使内容适合并且永远不会被裁剪(相反,水平滚动条应该可见)。此外,我希望DataGrid填充整个可用位置(我正在使用DockPanel)。我正在使用以下代码(已简化):这显然不适用于Width="Auto",因为它总是看起来像这样:这显然很难看。我想选择整行,或者选择列来填充整个宽度,这会更好,但正如您所看到的,这是行不通的。如果我改用Width="*",列的内容会被裁剪,这对我来说更糟。我找到了一个similarquestionhere,并在那里发布了解决方法。这可能行得通,但我正在使用MVVM模式,因此ItemsSour
在我的WPF应用程序中,我试图根据用户选择的选项更改按钮的可见性。加载时我希望其中一个按钮不可见。我正在使用内置值转换器BooleanToVisibilityConverter。但是它不起作用,因为按钮在加载时出现。我已将属性更改为true和false,没有区别。下面是我的代码,我看不出我遗漏了什么?我的View模型中的属性boolButtCancel{get{return_buttCancel;}set{_buttCancel=value;OnPropertyChanged("ButtCancel");}}在我的app.xaml中在我的MainWindow.xaml中
我是第一次尝试使用MVVM,非常喜欢职责分离。当然任何设计模式只能解决很多问题——不是全部。所以我试图弄清楚在哪里存储应用程序状态以及在哪里存储应用程序范围的命令。假设我的应用程序连接到一个特定的URL。我有一个ConnectionWindow和一个ConnectionViewModel,它们支持从用户那里收集这些信息并调用命令来连接到该地址。下次应用程序启动时,我想在不提示用户的情况下重新连接到同一地址。到目前为止,我的解决方案是创建一个ApplicationViewModel,它提供连接到特定地址的命令并将该地址保存到某个持久性存储(实际保存的位置与这个问题无关)。下面是一个简化的
我的WPF应用程序中有一个组合框:绑定(bind)到KeyValuePair的集合这是我的ViewModel中的CompMfgBrandID属性:publicstringCompMfgBrandID{get{return_compMFG;}set{if(StockToExchange!=null&&StockToExchange.Where(x=>!string.IsNullOrEmpty(x.EnteredPartNumber)).Count()>0){vardr=MessageBox.Show("Changingthecompetitormanufacturerwillremove
当我使用WPF实现MVVM模式时,我发现ReSharper经常警告我某些属性从未在我的ViewModel中使用过。问题是它们正在被使用,但只被数据绑定(bind)系统使用。有没有其他人遇到过这种烦恼,有没有办法帮助ReSharper意识到这些属性确实被使用了?至少我很高兴VS2010正确地意识到[Import]标记的成员不会“始终为空”,但希望我也能解决这个问题。 最佳答案 您可以使用外部注释向ReSharper指示使用了该方法,因此不会向您发出警告。请参阅有关here的ReSharper文档.您需要使用[UsedImplicitl