Использование IMultiValueConverter для передачи нескольких CommandParameters в 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>

Ниже приведен код для 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();
    }
}

Когда я отлаживаю, как только он достигает строки возвращаемых значений, правильные значения находятся в массиве. но когда я нажимаю кнопку, которая запускает команду filtergrid, возвращаемые значения равны нулю? Может ли кто-нибудь помочь. Спасибо.

8
задан bewilderedprogrammer 25 May 2012 в 18:20
поделиться