作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 IMultiValueConverter 将多个值传递给命令(作为命令参数)。这些值在通过转换器时是正确的,但是一旦调用 Can_Execute() 和 Execute() 命令,我就会得到一个空对象数组。有什么想法吗?
Xaml:
<Button Content="+" HorizontalAlignment="Right" VerticalAlignment="Top" Width="23" Height="23" Margin="0,0,0,0">
<Button.CommandParameter>
<MultiBinding Converter="{StaticResource Converter_MultipleValues}">
<Binding/>
</MultiBinding>
</Button.CommandParameter>
<Button.Command>
<Binding Path="Command_Add_Files" Source="{StaticResource Vm_FileList}"/>
</Button.Command>
</Button>
IMultiValueConverter 类:
class cvt_multivalue : IMultiValueConverter {
public object Convert (object[] Values, Type Target_Type, object Parameter, CultureInfo culture) {
if (Target_Type != typeof (object)) throw new NotSupportedException ();
return Values;
}
public object [] ConvertBack (object Value, Type [] Target_Type, object Parameter, CultureInfo culture) {
throw new NotSupportedException ();
}
}
当我没有使用 MultiBinding 和转换器时,代码工作得很好,但我需要 MultiBinding 以便我可以将一些额外信息传递给命令。
最佳答案
返回 Values.Clone() 而不仅仅是来自转换器的值似乎可以解决问题,但我不确定这是否是最好的做法...
关于wpf - IMultiValueConverter 值没问题,但 CommandParameter 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4606811/
我是一名优秀的程序员,十分优秀!