问题标签 [icommand]
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.
c# - 即使设置了 CommandParameter,ICommand.CanExecute 也被传递为 null
我有一个棘手的问题,我将 a 绑定ContextMenu
到一组ICommand
衍生对象,并通过样式设置每个对象的Command
andCommandParameter
属性:MenuItem
然而,当ICommand.Execute( object )
它应该传递一组选定的注释时,ICommand.CanExecute( object )
(在创建菜单时调用)被传递为空。我已经检查并在调用之前正确实例化了选定的笔记集合(实际上它在其声明中分配了一个值,所以它从不null
)。我不知道为什么 CanEvaluate 会通过null
。
wpf - 如何将 ItemTemplate CheckBox 的 Command 属性绑定到 ViewModel 对象的属性?
让我用伪代码问这个问题:
其中
“联系” ViewModel 对象设置为窗口的 DataContext。
"Contacts" 具有 "PersonCollection" ,公共 ICommand PersonSelectedCommand 属性。“PersonCollection”是列表
“Person”具有名称、年龄属性
目前这不起作用,因为 CheckBox 正在尝试查找并绑定对象“person”的 ICommand“PersonSelectedCommand”属性,该属性不存在!
如何将 CheckBox 绑定到对象“Contact”的 ICommand“PersonSelectedCommand”属性
感谢和问候
123Deveopler
wpf - WPF CommandBinding 不在顶级项目/窗口/此
我想要的只是不同选项卡上的不同绑定,因此切换选项卡会切换命令可用性。我认为 CommandBindings 就是这样工作的。
但是我花了最后一段时间试图让这个简单的样本工作。要么我从根本上误解了(这不是第一次),要么出了点问题。
我将 CommandBinding 添加到 textBoxA 但未添加到 textBoxB。在它们之间移动应该启用和禁用设置为相应命令的按钮。
将 CommandBinding 添加到 Window 可以很好地启用按钮,但这会扼杀特定于项目的 CommandBindings 的全部意义。
使用此 XAML
在后面使用此代码
您会看到(如果您尝试此代码)该按钮仍然处于禁用状态,即使您从一个文本框移动到另一个文本框也是如此。(即使 textBoxA 应该启用按钮,因为它实现了按钮的 CommandBinding)。
这应该如何工作?
先感谢您。
.net - CommandConverter - 有效异常或 .NET 错误
我的 C#/.NET 应用程序出现异常,内容如下:
“CommandCoverter”无法将“MyNamespace.MyDerivedFromICommandSubclass”转换为“System.String”。
正如MSDN ICommand文档所述,我正在做的事情相当简单:
我有一个带有超链接的FlowDocument。超链接允许有一个命令属性,我将其设置为派生的 ICommand,以便在单击链接时执行我的自定义操作。
那部分有效。
这就是我遇到麻烦的地方:如果我选择超链接并右键单击复制(或按 Control-C)。
.NET 框架立即抛出 System.NotSupportedException 并带有上述异常详细信息。堆栈跟踪显示:
在 System.ComponentModel.TypeConverter.GetConvertToException(对象值,类型 destinationType)
在 System.Windows.Input.CommandConverter.ConvertTo(ITypeDescriptorContext 上下文,CultureInfo 文化,对象值,类型 destinationType)
此时我求助于Red Gate 的免费 .NET Reflector并查看源代码ConvertTo
:
那么问题就变成了,因为所有这些都发生在 .NET 内部,我是不是做错了什么,如果是,怎么办?或者,这是一个 .NET 错误,如果是,是否有解决方法?
谢谢你的帮助。
silverlight - MVVM 与代码隐藏上的 UI 特定事件
我有一个 Silverlight 页面,它的控件很少,并且所有行为都不是数据绑定的。例如,RichTextBox 是 Text 属性的数据绑定。但是粗体、斜体、编号等控件行为是由控件上方工具栏中的按钮单击事件驱动的。这些控件确实会更改数据的值,但不会实际保存/检索数据。那么,与在 ViewModel 中创建 ICommand 对象相比,将此类 UI 事件保留在 Silverlight 页面的代码隐藏页面中是否可以?
MVVM 表示您的 View 应该与 ViewModel 进行交互,以便在内部与 Model 进行交互。这里的视图只是更新视图而不是模型。那么此类事件的代码隐藏可以吗?
wpf - 测试是否执行了 ICommand
我的问题如下:如何测试是否在模拟对象上调用了 ICommand 的 Execute 方法?
我正在使用以下代码:
我必须在这里指定我在 UCOperandViewModel 上也有一个 EditCommand ICommand,并且我想测试当我在 toolbarTrayVM 上调用 EditCommand.Execute 时该 ICommand 是否被执行。
我在调用验证时收到 ArgumentException。它说“在模拟类型上找不到给定参数的匹配构造函数。”。
提前致谢。
silverlight - 如何为 ICommand 设置 EventArg?
在 VM 中,将 ICommand 设置为:
在 xaml 中,绑定到这个命令就像
然后运行应用程序。它说无法将字符串转换为 EventArgs。
如何为 ICommand 绑定设置 EventArgs?
silverlight - 将代码保留在 XAML 代码之外的真正优势是什么?
Silverlight 社区为使 XAML 的代码隐藏在文件中尽可能地无代码而付出了很多努力。这背后的真正动机是什么?
例如,使用命令而不是事件处理程序有什么好处?如果我有
那为什么首选这个?
显然,SaveCommand
在我的视图模型中将有效地调用SaveChanges()
.
这可能导致视图是 100% XAML 的情况,甚至在 XAML 中实例化视图模型,并且视图和视图模型之间的连接完全通过绑定完成。当然它很干净,但还有什么?灵活的?为什么?视图仍然需要使用正确的 ViewModel,所以如果两者之间的联系存在并且是隐式的,为什么不让它更明确呢?它还具有失去编译时支持的缺点。如果我将按钮连接到不存在的事件处理程序,编译器会告诉我。如果我绑定到一个不存在的命令,它不会。
c# - 需要帮助理解 MVVM 教程、RelayCommand 和 lambda 的使用
我正在阅读 Josh Smith 的带有模型-视图-视图模型设计模式教程 的WPF 应用程序
我不明白下面的代码试图做什么。
首先,语法提醒我属性,但使用添加/删除代替。
但什么是CommandManager.RequerySuggested
?
它将事件订阅委托给 CommandManager.RequerySuggested 事件。这可确保 WPF 命令基础结构在询问内置命令时询问所有 RelayCommand 对象是否可以执行
此外,保存命令配置了 lambdas。第一,有 2 个参数变量。他们会冲突吗?我不能只做类似的事情,RelayCommand(this.Save(), this.CanSave)
或者没有这样的语法。
wpf - WPF的MVC(不是mvvm)?
我不喜欢在 WPF 的 ViewModel 中有与控制器相关的代码(理解 ICommand 的东西)。是否有一个框架来分离它并回到 WPF 的旧 MVC?
我想得到: - XAML 中的视图 - 视图模型 - 模型 - 命令处理程序