问题标签 [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.
silverlight-4.0 - 如何执行 Silverlight ICommand?
这是一个如此基本的问题,但我不得不问。
在 SL 中,我有这个 XAML:
而这背后的代码:
但是当我单击按钮时,命令的 Execute() 永远不会被触发。
有什么诀窍吗?
wpf - 如何在 MVVM 中使用 Tooltip 实现命令?
大多数 MVVM 框架都实现了基本的命令模式(例如 PRISM 中的 DelegateCommand),它使用 ViewModel 中的 Execute 和 CanExecute 方法。
但是,我经常需要在命令中添加工具提示。例如,我想描述一个命令的目的或解释它为什么被禁用。
目前我的工具提示是独立的,但这会导致样式定义的代码重复。
有没有办法将工具提示与 MVVM 命令模式集成?
我应该创建自己的 Command 类,还是被认为是不好的做法?
wpf - CanExecuteCommand 对性能有影响吗?
使用 ICommand 对象的 CanExecuteCommand 对性能有何影响。该方法是否一遍又一遍地执行?
我需要遍历大约 200 个对象的集合,根据这些对象决定是否应该启用绑定到命令的按钮?CanExecuteCommand 是否会重复执行,这会使我的应用程序变慢
wpf - 在 ViewModel 中创建一个新的 ICommand 对象
两个 ICommand 对象都绑定到一个 ViewModel。
第一种方法似乎经常使用。
但是第二个节省了一些代码行,但是它不会在刷新 Binding 时每次都创建一个新的 ICommand 对象,所以它浪费资源?!
wpf - WPF 用户控件和 ICommand
我创建了一个 UserControl,里面有一个按钮,还有一个按钮样式。该样式在鼠标悬停触发器时设置按钮背景。现在我添加了一个 ICommand 类型的依赖属性并将按钮命令设置为这个新属性。命令绑定可以正常工作,但是当禁用自定义控件(canexecute = false)时,鼠标悬停触发器仍会更改背景。
我试过像这样更改鼠标悬停触发器,但它不起作用:
任何人都可以帮忙吗?
c# - WPF 如何使用 CommandManager (CommandManager.InvalidateRequerySuggested) 确定何时失效?
我一直在这里和那里使用RelayCommand,这让我想知道并想知道... CommandManager.InvalidateRequerySuggested()
WPF 何时调用该函数?
我的猜测是每次触发 UI 上的任何其他路由事件时,这在 MVVM 世界中主要意味着当引发 OnPropertyChanged 事件时,导致值发生变化,从而导致一些相关的 routedevent 执行。但是,这只是一个猜测,我想知道是否有人知道这里的确切内部工作原理。
wpf - WPF Event to Command 的另一种实现(有问题)
我正在研究将 ICommand 连接到控件事件的各种实现。因此,例如 TextBox 的 GotFocus 应该在我的视图模型中调用 GotFocusCommand。然后我有了一个想法来实现我自己的版本(供我自己学习)并且它运行良好,但我只能将一个事件链接到 XAML 中的一个命令。
(基本上我只是使用反射来找到指定的事件,然后做一个执行命令的 AddEventHandler )
这很好用:
但这不是:
因为你它会导致重复的属性名称错误。
是否有可能做类似的事情:
将多个事件“映射”到命令?
wpf - 对象发送者在 RelayCommand 中始终为空
我正在使用 RelayCommand 来处理按钮单击,我需要获取 sender 参数但它始终为空,知道为什么吗?
视图模型.cs
查看.xaml
我需要在 ExpandClickCommand 中获取当前 ListboxItem 的索引
wpf - 从 xaml 传递命令参数
我尝试做这样的事情:
但我总是得到空值(我也尝试过 SelectedIndex 和 SelectedValue)
如果我将以下参数传递给执行代码,它将起作用:
c# - 在 DataGrid 中一致地使用 ICommand 和 InputBindings
我正在尝试创建一个具有以下功能的 DataGrid:
- 只读数据网格,但通过双击和单独的编辑表单提供编辑功能(双击特定行)
- 调用新/编辑/删除表单的 ContextMenu(右键单击整个 DataGrid)
- 调用删除表单的删除键(在特定选定行上)
我认为使用 ICommand 是个好主意,所以我创建了一个这样的 DataGrid:
然后我意识到,双击一行不起作用,所以我添加了这个:
当然删除键也不起作用,我添加了这个:
为什么我必须这样做?使用命令来防止这种对事件的攻击难道不是重点吗?我错过了什么吗?
在我简单而完美的世界中,我想在 CanExecute 方法中决定是否适合处理命令,而不是订阅大量不同的事件处理程序。