1

私はこれListBoxを私のxamlに持っています。

FIRST.XAML

<ListBox ItemsSource="{Binding Items}" x:Name="newsList" 
   ItemTemplate="{StaticResource NewsListTemplate}"
   Margin="-2,86,2,0" SelectionChanged="openNewsViewer" 
   Height="361" VerticalAlignment="Top" d:LayoutOverrides="GridBox"
/>

問題は、リスト項目を初めてクリックすると、すべて問題なく正しく呼び出されますが、 fromSECOND.XAMLに戻ると、同じ項目を再クリックできないことです!FIRST.XAMLSECOND.XAMLListBox

しかし、なぜ?

ここで C# コード:

private void openNewsViewer(object sender, SelectionChangedEventArgs e)
{
    var listbox = (ListBox)sender;
    var entry = (ItemViewModel)listbox.SelectedItem;

    Navigate(entry.Link, entry.LineOne, true);
}

private void Navigate(string url, string title, bool showAppBar)
{
    var uri = "/NewsViewer.xaml?idx=" + url + "&title=" + title + "&appbar=" + (showAppBar == true ? "true" : "false");
    NavigationService.Navigate(new Uri(uri, UriKind.Relative));
}

それはすべてです!

この問題を解決するためのアイデアはありますか?
ありがとう!

編集 1:
同じ行の 2 回目のクリックNOT CALL openNewsViewer。XAMLファイルに問題がある可能性がありますか?

私を助けてください。
ありがとう^2!

4

1 に答える 1

0

問題は、ページがリロードされたときにイベントが発生することです(リストボックスが作成されたときにselectedItemが変更されます)。

ManipulationStarted イベントを使用できます。

于 2011-05-31T23:39:54.690 に答える