草庐IT

c# - 在较长的运行过程中禁用 WPF 按钮,MVVM 方式

我有一个WPF/MVVM应用程序,它由一个带有几个按钮的窗口组成。每个按钮都会触发对外部设备的调用(USBmissilelauncher),这需要几秒钟。当设备运行时,GUI被卡住。(没关系,因为该应用的唯一目的是调用USB设备,并且在设备移动期间您不能做任何其他事情!)唯一有点难看的是卡住的GUI在设备移动时仍然接受额外的点击。当设备仍在移动时,我再次单击同一个按钮,设备会在第一次“运行”完成后立即再次开始移动。所以我想在单击一个按钮后立即禁用GUI中的所有按钮,并在按钮的命令完成运行后再次启用它们。我找到了一个看起来符合MVVM规范的解决方案。(至少对我来说...请注意,我仍然是W

c# - 密码框和 MVVM

我们有以下场景:MVVM用户界面,用户可以在其中放置他的密码(实际上是PasswordBox)应该做一些工作的服务器服务器连接到一些需要身份验证的数据库我已经读过这个QuestiononPasswordBoxinMVVM但是怎么办都没有答案!只是“永远不要那样做”。传递密码的正确方法是什么?如何解决安全问题?Binding没有正确的方法到PasswordBox和密码不应存储在某处,好的。那么,做这些事情的MVVM方法是什么?即使模式被打破,有没有好的方法可以实现这样的事情?想到一个Func检索它,但不绑定(bind)它会弄得一团糟……更新从(希望加密的)密码存储区初始化Password

c# - 密码框和 MVVM

我们有以下场景:MVVM用户界面,用户可以在其中放置他的密码(实际上是PasswordBox)应该做一些工作的服务器服务器连接到一些需要身份验证的数据库我已经读过这个QuestiononPasswordBoxinMVVM但是怎么办都没有答案!只是“永远不要那样做”。传递密码的正确方法是什么?如何解决安全问题?Binding没有正确的方法到PasswordBox和密码不应存储在某处,好的。那么,做这些事情的MVVM方法是什么?即使模式被打破,有没有好的方法可以实现这样的事情?想到一个Func检索它,但不绑定(bind)它会弄得一团糟……更新从(希望加密的)密码存储区初始化Password

c# - 必须在与 DependencyObject 相同的线程上创建 DependencySource

我将可观察字典从View模型绑定(bind)到View。我使用CaliburnMicroFramework。查看:来自View模型类的代码。属性如下所示:publicMyObservableDictionaryFriends{get{return_friends;}set{_friends=value;NotifyOfPropertyChange(()=>Friends);}}在Dispatcher计时器中,我在单独的线程中每3秒调用一次新服务方法。所以我的View模型的构造函数我有这个:_dispatcherTimer=newDispatcherTimer();_dispatcher

c# - 必须在与 DependencyObject 相同的线程上创建 DependencySource

我将可观察字典从View模型绑定(bind)到View。我使用CaliburnMicroFramework。查看:来自View模型类的代码。属性如下所示:publicMyObservableDictionaryFriends{get{return_friends;}set{_friends=value;NotifyOfPropertyChange(()=>Friends);}}在Dispatcher计时器中,我在单独的线程中每3秒调用一次新服务方法。所以我的View模型的构造函数我有这个:_dispatcherTimer=newDispatcherTimer();_dispatcher

c# - XAML 上的 Xamarin Forms ListView ItemTapped/ItemSelected 命令绑定(bind)

如何将我的ViewModel(当前在BindingContext中)的ICommand对象绑定(bind)到XAML中ListView的ItemTapped或ItemSelected?使用Button时这是一项简单的任务,我只需设置Command="MyViewModelCommand"一切正常。 最佳答案 当您可以直接在ViewModel中直接获取选定/点击的对象时,我不确定为什么需要在页面中提供ItemSelected或ItemTapped事件:我认为您已经使用以下类型的代码绑定(bind)了ListView在与页面绑定(bin

c# - XAML 上的 Xamarin Forms ListView ItemTapped/ItemSelected 命令绑定(bind)

如何将我的ViewModel(当前在BindingContext中)的ICommand对象绑定(bind)到XAML中ListView的ItemTapped或ItemSelected?使用Button时这是一项简单的任务,我只需设置Command="MyViewModelCommand"一切正常。 最佳答案 当您可以直接在ViewModel中直接获取选定/点击的对象时,我不确定为什么需要在页面中提供ItemSelected或ItemTapped事件:我认为您已经使用以下类型的代码绑定(bind)了ListView在与页面绑定(bin

c# - View 模型的 MVVM 继承

我想知道如何在MVVM模式中处理View模型的继承。在我的应用程序中,我有一个类似于以下内容的数据模型:classCustomObject{publicstringTitle{get;set;}}classCustomItem:CustomObject{publicstringDescription{get;set;}}classCustomProduct:CustomItem{publicdoublePrice{get;set;}}在我的应用程序中,我有一个ViewModelBase类,然后将有以下View模型:CustomObjectViewModelCustomItemViewM

c# - View 模型的 MVVM 继承

我想知道如何在MVVM模式中处理View模型的继承。在我的应用程序中,我有一个类似于以下内容的数据模型:classCustomObject{publicstringTitle{get;set;}}classCustomItem:CustomObject{publicstringDescription{get;set;}}classCustomProduct:CustomItem{publicdoublePrice{get;set;}}在我的应用程序中,我有一个ViewModelBase类,然后将有以下View模型:CustomObjectViewModelCustomItemViewM

c# - 使 AvalonEdit MVVM 兼容

我正在努力使AvalonMVVM在我的WPF应用程序中兼容。通过谷歌搜索,我发现AvalonEditisnotMVVMfriendly我需要通过创建一个从TextEditor派生的类然后添加必要的依赖属性来导出AvalonEdit的状态。恐怕我对HerrGrunwald的回答很迷茫here:IfyoureallyneedtoexportthestateoftheeditorusingMVVM,thenIsuggestyoucreateaclassderivingfromTextEditorwhichaddsthenecessarydependencypropertiesandsynch