Windows Phone и Silverlight ListBox.ItemTemplate

У меня есть приложение Windows Phone 7 со следующим списком, и каждый элемент содержит 2 текстовых блока и кнопку HyperlinkButton.

 <ListBox.ItemTemplate><DataTemplate><StackPanel Orientation="Vertical">
                            <TextBlock/>
                            <TextBlock/>
                            <HyperlinkButton Content="[More...]" FontSize="12"HorizontalAlignment="Right" Height="30" Click="ClickEvent">
                                <i:Interaction.Triggers>
                                    <i:EventTrigger EventName="Click"<GalaSoft_MvvmLight_Command:EventToCommand Command="{Binding GetCommand, Mode=OneWay}"/>
                                    </i:EventTrigger>
                                </i:Interaction.Triggers>
                            </HyperlinkButton>
                        </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>

В конструкторе ViewModel у меня есть следующий код:

GetCommand = new RelayCommand(() =>{some code}); where GetCommand is a property :

public RelayCommand GetCommand { get; private set; }

Моя проблема в том, что GetCommand = new RelayCommand(() =>{some code}); не выполняется, когда я нажимаю кнопку.

Я должен сказать, что если не размещать HyperlinkButton в элементе itemTemplate, все работает нормально. Я использую Galasoft mvvm light takeit — http://www.galasoft.ch/mvvm/getstarted/ Я ценю любую помощь.


person zoltanflavius    schedule 04.01.2011    source источник
comment
Пожалуйста, не задавайте подобные вопросы в такой быстрой последовательности. Просто отредактируйте исходный вопрос, указав дополнительные детали. Рассмотрите возможность удаления другого вопроса с той же темой   -  person AnthonyWJones    schedule 05.01.2011


Ответы (1)


Я предполагаю, что у вас есть опечатка в вашем XAML, он должен читаться -

<i:Interaction.Triggers>
    <i:EventTrigger EventName="Click">
        <GalaSoft_MvvmLight_Command:EventToCommand Command="{Binding GetCommand, Mode=OneWay}"/>
    </i:EventTrigger>
</i:Interaction.Triggers>

Попробуйте код после удаления Mode=OneWay из выражения привязки.

ХТГ, индифромоз

person indyfromoz    schedule 04.01.2011