2

C# Metro アプリケーションでリストビューのすべての値を選択解除するにはどうすればよいですか? オブジェクト ブラウザとオンラインで検索しましたが、何も見つかりませんでした。前もって感謝します!

4

2 に答える 2

2

SelectedItemsリストをクリアしてみましたか?それが通常のやり方だと思います。

listView.SelectedItems.Clear();

編集:いくつかのことを明確にするために、選択したアイテムを問題なくクリアするサンプル WPF アプリケーションを次に示します。アプリケーションの動作は多少異なるかもしれませMetroんが、ロジックは同じであるべきだと思います。

<StackPanel>
    <ListView Name="listView">
        <ListViewItem>Item 1</ListViewItem>
        <ListViewItem>Item 2</ListViewItem>
        <ListViewItem>Item 3</ListViewItem>
        <ListViewItem>Item 4</ListViewItem>
    </ListView>
    <Button Click="Button_Click"
            Content="Clear selection" />
</StackPanel>

コード ビインドは次のとおりです。

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        listView.SelectedItems.Clear();
    }

ボタンをクリックすると、リスト項目が正しく選択解除され、例外がスローされません。

于 2012-07-29T07:17:43.270 に答える
1

私は自分がやりたいことをする別の方法を見つけました。デフォルトで選択されている「なし」というリスト項目があります。このアイテムを選択すると、以前に選択した他のアイテムからフォーカスが移動します。Pako が提供するソリューションは、従来の Desktop/WPF 環境では機能しますが、Metro 環境では機能しないようです。助けてくれてありがとう。

于 2012-08-09T14:45:19.350 に答える