小编bew*_*mer的帖子

使用IMultiValueConverter将多个CommandParameter传递给viewModel

我有以下代码:

<DataGridTemplateColumn Header="Security">
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <Button Name="Security" Content="{Binding Path=totalSecurities}" Command="{Binding Source={StaticResource viewModel}, Path=filterGridCommand}">
                                    <Button.CommandParameter>
                                        <MultiBinding Converter="{StaticResource PassThroughConverter}">
                                            <Binding Path="sector"/>
                                            <Binding ElementName="Security" Path="Name"/>
                                        </MultiBinding>
                                    </Button.CommandParameter>

                                </Button>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>
Run Code Online (Sandbox Code Playgroud)

以下是PassThroughConverter的代码:

public class PassThroughConverter : IMultiValueConverter
{
    public object Convert(object[] values, Type targetType, object parameters, CultureInfo culture)
    {

        return values;
    }

    public object[] ConvertBack(object value, Type[] targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在命中返回值行时调试,正确的值在数组中,但是当我按下触发filtergrid命令的按钮时,返回的值都是null?谁能帮忙.谢谢.

.net wpf mvvm relaycommand imultivalueconverter

8
推荐指数
1
解决办法
2831
查看次数

标签 统计

.net ×1

imultivalueconverter ×1

mvvm ×1

relaycommand ×1

wpf ×1