2013-04-25 3 views
1

알려진 변경 사항 이벤트 버그를 수정하는 방법이 있습니까? 동일한 항목을 다시 탭하면 선택이 작동하지 않습니다.SelectionChanged 이벤트가 발생하지 않았습니다.

추가 배경을 제공하려면 내 피벗 페이지에 4 개의 항목이 있고 그 중 하나를 클릭하면 다른 페이지로 이동합니다. 이제 내 딜레마는 같은 항목을 다시 선택할 때 탐색이 작동하지 않거나 아무 일도 일어나지 않는다는 것입니다.

미리 제안 해 주신 내용을 미리 알려 주시기 바랍니다.

<ListBox x:Name="lbviewlist" ItemsSource="{Binding items}"> 
       <i:Interaction.Triggers> 
        <i:EventTrigger EventName="selectionchanged"> 
         <Command:EventToCommand Command ="{Binding ItemListCommand }" PassEventArgsToCommand="True" /> 
        </i:EventTrigger> 
       </i:Interaction.Triggers> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <StackPanel> 
          <TextBlock TextWrapping="Wrap" Text="{Binding itemName}" FontSize="30" Margin="10,0,0,0" Style="{StaticResource PhoneTextTitle2Style}" Foreground="CadetBlue"/> 
          <TextBlock TextWrapping="Wrap" Text="{Binding itemDescription}" FontSize="20" Margin="15,5,0,10"/> 
          </StackPanel> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
+2

버그가 아니며, 'SelectedChanged'는 정확히 무엇을해야하며, Selection 요소가 변경되면 실행됩니다. 동일한 요소가 선택 되어도 변경되지 않았으므로 실행되지 않습니다. Item 또는 ListBox 자체에서 MouseEvents 중 하나를 사용하여이 문제를 처리해야 할 수도 있습니다. –

+0

@ sa_ddam213 어떻게 그렇게 할 지 가르쳐 주시겠습니까? 나는이 분야에서 초보자 일 뿐이며 어떻게 든 그 개념을 이해하기가 어렵습니다. 선택 이벤트를 마우스 이벤트로 변경해야한다는 의미입니까? MVVM을 사용하고 있습니다. – JennyJane

답변

0

좋은 다른 방법은 당신이 그것을 보지 못할 수 있도록 보이지 않게 스타일되는 버튼, 내부의 각 항목의 내용을 모두 포함하는 것입니다,하지만 그것은 캡슐화 항목의 표면을 커버한다. MVVM을 사용하는 경우 동일한 명령 속성을 각 '버튼'에 바인딩하고 버튼의 DataContext (데이터 항목)를 명령 매개 변수에 바인딩 할 수 있습니다. 그런 다음 항목을 클릭 할 때마다 매번 명령이 실행됩니다. 항목 컨트롤을 변경하여 선택 항목이 변경되지 않도록 할 수 있습니다.

+0

버튼 안에 모든 항목을 포함시키고 보이지 않게하려면 어떻게해야합니까? 위의 내 XAML을 참조하십시오 – JennyJane

+0

이벤트가 실행되지 않지만 버튼에 내용을 넣을 수 있었습니까? 어떤 생각? – JennyJane

+0

그냥 '선택'이벤트가 아닌 '클릭'이벤트에 대한 이야기입니다. 더 이상 콤보 상자의 'SelectionChanged'이벤트가 아닙니다. –

관련 문제