GridView を ObservableCollection にデータバインドすると、コレクションの最初の項目が自動的に選択されます。GridViewのSelectionModeプロパティは に設定されていますmultiple。この自動選択を防ぐ方法はありますか? SelectedIndexまたは、GridView を -1 にリセットできるように、どのイベントでリッスンする必要がありますか?
3203 次
3 に答える
2
実際には非常に簡単な解決策があります。XAML でSelectionModeGridView のを設定します。None次に、ページが作成されたら、 を に変更SelectionModeしMultipleます。
publicPage()
{
this.InitializeComponent();
itemListView.SelectionMode = ListViewSelectionMode.Multiple;
}
ただし、私が抱えている問題は、自分のプログラムが原因のようです。これは私が抱えている問題の回避策です。自動選択はデフォルトの動作ではありません。
于 2012-07-12T17:25:51.317 に答える
1
私の状況は逆です。にGridViewバインドされた がObservableCollectionあり、最初の項目を選択したかったのですが、選択されませんでした! なぜそうなったのかは、なんとなくわかったのですが。my を生成するには 2 つの方法がありObservableCollection、選択した方法に応じて、最初のアイテムが選択されるかどうかが決まります。
たとえば、ビューモデルに GridView にバインドする変数 ItemList があります。
public ObservableCollection<Item> ItemList { get; private set; }
方法 1 (何も選択されていない)
public void getData()
{
var myList = // get your list here
for (int i = 0; i < myList.Count; i++)
{
this.ItemList.add(myList[i]);
}
}
方法 2 (1 番目の項目が自動的に選択される)
public void getData()
{
var myList = // get your list here
this.ItemList = myList
}
于 2012-08-24T03:38:36.233 に答える