icommand相关内容

WPF ViewModel 命令可以执行问题

我的视图模型上的上下文菜单命令有些困难. 我正在为 View Model 中的每个命令实现 ICommand 接口,然后在 View (MainWindow) 的资源中创建一个 ContextMenu,并使用 MVVMToolkit 中的 CommandReference 来访问当前的 DataContext (ViewModel) 命令. 当我调试应用程序时,似乎除了在创建窗口时没有 ..
发布时间:2022-01-23 08:15:23 其他开发

ListBoxItem MVVM 命令绑定中的 WPF ListBox 命令

我一直在尝试找到一种方法,在 ListBox 控件的 ListBoxItem's 中包含命令按钮.我通过 ICommand 接口使用 MVVM 和命令绑定到 DataContext.我无法找到从 ListBox ItemsSource 中绑定到 Views DataContext 的方法.我继续收到命令“未找到"错误.谁能帮我理解如何做到这一点.我相信它与命令绑定路径有关,但我不确定.任何帮助或指 ..
发布时间:2022-01-16 11:23:55 其他开发

如何绑定命令以双击 DataGrid 中的一行

我开发了一个 WPF UserControl,旨在用作选择列表,如下所示: 绑定到实体(例如员工)的 CollectionView 的 DataGrid DataGrid 上方的 TextBox,可用于过滤 DataGrid 中显示的项目. 我想公开一个将在用户双击 DataGrid 中的行时执行的命令.然后,容器可以通过对 DataGrid 中的 SelectedItem 执行某些 ..
发布时间:2022-01-06 09:35:23 其他开发

WPF ViewModel 命令 CanExecute 问题

我在使用视图模型上的上下文菜单命令时遇到了一些困难. 我正在为视图模型中的每个命令实现 ICommand 接口,然后在视图 (MainWindow) 的资源中创建一个 ContextMenu,并使用来自 MVVMToolkit 的 CommandReference 来访问当前的 DataContext (ViewModel) 命令. 当我调试应用程序时,似乎除了在创建窗口时没有调用命令 ..
发布时间:2022-01-04 15:27:39 其他开发

有没有办法在禁用的按钮上降低图像的饱和度?

有什么方法可以使禁用的按钮中的图像去饱和?例如.ICommand.CanExecute = false?还是我需要使用单独的图像 + 样式/触发器 解决方案 我为此使用了一种特殊的样式,当按钮被禁用时,它会降低图像的不透明度(是的,如果按钮被绑定,这也适用命令).从技术上讲,这不是去饱和,但它看起来很相似,它可能会帮助您自己推导出解决方案: ..
发布时间:2022-01-01 21:18:32 其他开发

WPF 和 MVVM.绑定事件

我正在使用 MVVM 模式、RelayCommand 等开发 WPF 应用程序.我在这个问题上读了很多,但我不清楚: 我想要做的就是移动一个形状,例如椭圆,并捕捉它的最终位置,以放入数据库. 但我无法将事件(MouseLetButtonDown、MouseLeftButtonUp 和 MouseMove)绑定到命令.我已经阅读了附加行为,但我需要事件的参数(MouseButtonEve ..
发布时间:2021-12-23 13:44:34 其他开发

WPF 命令绑定与输入验证 - 如何启用“保存"按钮仅当所有输入都有效时

在我的 ViewModel 中,我已经实现了 IDataErrorInfo 接口(以及 INotifyPropertyChanged).输入验证按预期工作,我在那里没有问题. 我将此属性作为 IDataErrorInfo 的一部分 public string Error { get { return this[null];} } 根据我的理解,如果所有经过验证的输入都通过验证,Error 应 ..
发布时间:2021-12-23 13:43:42 其他开发

将代码置于 XAML 代码之外的真正优势是什么?

Silverlight 社区付出了很多努力来使 XAML 的代码隐藏文件尽可能没有代码.这背后的真正动机是什么? 例如,使用命令而不是事件处理程序有什么好处?如果我有 ...私有无效 SaveButton_Click(对象发送者,RoutedEventArgs e){_myViewModel.SaveChanges();} 那为什么是首选呢? 很明显,我的视图模型中的 SaveCo ..
发布时间:2021-12-23 13:40:16 其他开发

中继命令可以执行和任务

我想在调用中继命令时启动任务,但是只要该任务正在运行,我想禁用该按钮 举个例子 私有ICommand更新;公共 ICommand 更新{得到{如果(更新 == 空){更新 = 新的中继命令(参数 =>Task.Factory.StartNew(()=> StartUpdate()),参数 =>真的);//true 表示按钮将始终处于启用状态}返回更新;}} 检查该任务是否正在运行的最佳方 ..
发布时间:2021-12-23 13:31:55 C#/.NET

ICommand 与 RoutedCommand

让我们将按钮 Command 属性绑定到自定义命令. 我应该何时实施 ICommand 以及何时从 RoutedCommand 派生?我看到 RoutedCommand 实现了 ICommand. 在哪种情况下我需要实现 ICommand?MVVM模型呢?哪一个更适合这个目的? 解决方案 如您所见,RoutedCommand 类是ICommand接口的一个实现,主要区别在于它的 ..
发布时间:2021-12-23 13:18:32 其他开发

Josh Smith 对 RelayCommand 的实现有缺陷吗?

考虑参考 Josh Smith 的文章 WPF 应用程序与模型-视图-视图模型设计模式,特别是 RelayCommand 的示例实现(在图 3 中).(此问题无需通读整篇文章.) 总的来说,我认为实现非常好,但我有一个关于将 CanExecuteChanged 订阅委托给 CommandManager 的 RequerySuggested 的问题> 事件.文档RequerySuggested ..
发布时间:2021-12-23 13:03:36 其他开发

ICommand MVVM 实现

所以在我正在做的这个特定的 MVVM 实现中,我需要几个命令.我真的厌倦了一个一个地实现 ICommand 类,所以我想出了一个解决方案,但我不知道它有多好,所以在这里任何 WPF 专家的输入将不胜感激.如果你能提供更好的解决方案,那就更好了. 我所做的是一个 ICommand 类和两个将对象作为参数的委托,一个委托是 void(对于 OnExecute),另一个是 bool(对于 OnCa ..
发布时间:2021-12-02 13:50:27 C#/.NET

XAML 中 TextBox.TextChanged 的​​ WPF EventHandler 或代码隐藏?

说明 在 WPF 中,使用 MvvmLight,我有一个带有整数属性 SelectedIndex 的 viewModel.更改此属性的值是一项代价高昂的操作,因此我只想在操作员相当确定他已完成输入时更新该属性. 我有一个文本框和一个按钮.操作员输入一个数字,然后按下按钮.这应该会导致更新属性的命令. 用于此的标准 WPF MvvmLight 解决方案 class MyViewM ..
发布时间:2021-09-30 19:01:07 其他开发

MVVM 使用 ICommand 保存在数据库中

我有一个对话框,可以通过单击保存按钮获取一些基本信息,以便将这些信息保存在数据库中.这些基本信息将通过绑定存储在 ViewModel 中.我通过实体框架处理数据库,因此通过 DataContext. private Command.MonitoringTaskCommand objSaveButtonCommand =新的 Command.MonitoringTaskCommand(new Ac ..
发布时间:2021-09-30 19:00:27 C#/.NET

WPF 交互在样式中触发以调用视图模型上的命令

可能的重复: 如何在样式设置器中添加混合行为 当我在样式中使用交互触发器时,出现以下错误,“触发器不是样式类型的可附加元素".任何解释此错误的实际含义以及如何解决它. 作为参考,请查看 MVVM Light 工具包的 EventToCommand 示例. 在这种特殊情况下,我使用来自 Infragistics 的 Timeline 控件,它将事件表示为 EventTitle,当 ..
发布时间:2021-09-30 18:42:30 其他开发

如何在 MVVM WPF 应用程序中取消窗口关闭

如何在点击取消按钮(或右上角的 X 或 Esc)后取消退出特定表单? WPF: 视图模型: public class MyViewModel : Screen {私人取消命令取消命令;公共取消命令取消命令{得到 { 返回取消命令;}}公共 MyViewModel() {取消命令 = 新的取消命令(这个);}}公共类取消命令:ICommand {公共取消命令(MyViewModel v ..
发布时间:2021-09-28 20:39:24 C#/.NET