2013-08-28 4 views
2

안녕하세요. 여러분, 안녕하세요. 다음과 같은 문제가 있습니다 :ListPicker SelectionChanged 이벤트를 올바르게 처리하는 방법은 무엇입니까?

XAML에 선언 된 x : Name = "Backgroundlist"와 함께 listpicker가 있는데 정상적으로 작동합니다.

public MainPage() 
{ 
    InitializeComponent(); 
    Backgroundlist.Items.Add("photo"); 
    Backgroundlist.Items.Add("Bing");    
} 

그러나 (이 메시지 박스를 표시하지 않습니다 즉) 그 일을하지 않는 다음 코드 :

private void Backgroundlist_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    if (Backgroundlist.SelectedItem.Equals("photo")) 
    { 
     MessageBox.Show("photo"); 
    } 
    if (Backgroundlist.SelectedItem.Equals("Bing")) 
    { 
     MessageBox.Show("Bing"); 
    } 
} 

무엇 것 같다 다음과 같이

그 항목 선언 문제? 감사!

P. 예외가 발생하지 않습니다.

+0

'당신이 예외를받을 수 있나요 그 job'하지 않습니다 다음 코드? – PoweredByOrange

+0

친애하는 PoweredByOrange, 신속한 회신에 감사드립니다) 아니요, 예외가 없습니다. –

+0

SelectionChanged가 호출 될 때'SelectedItem'의 타입은 무엇입니까? – PoweredByOrange

답변

2

확인. 여기 거래가 있습니다. 또한 XAML에서 SelectionChanged="Picker"을 선언해야했습니다. 여기에 작동하는 전체 코드입니다 :

<toolkit:ListPicker x:Name="Backgroundlist" Header="Background" SelectionChanged="Picker" ExpansionMode="FullscreenOnly" /> 

public MainPage() 
     { 
      InitializeComponent(); 
      Backgroundlist.Items.Add("photo"); 
      Backgroundlist.Items.Add("Bing"); 
     } 

     private void Picker(object sender, SelectionChangedEventArgs e) 
     { 
      var picker = sender as ListPicker; 
      MessageBox.Show(picker.SelectedItem.ToString()); 
     } 

모든 것이) 결국 매우 원시적 인 것으로 판명는