Windows 8 の Metro スタイル アプリを使用している場合ListView
、複数選択が有効になっていると仮定して、すべてのインデックスを選択するにはどうすればよいですか?
void itemsChanged (Platform::Object^ sender,
Windows::UI::Xaml::Controls::Controls::SelectionChangedEventArgs^ e
{
// get selected indexes
}
Windows 8 の Metro スタイル アプリを使用している場合ListView
、複数選択が有効になっていると仮定して、すべてのインデックスを選択するにはどうすればよいですか?
void itemsChanged (Platform::Object^ sender,
Windows::UI::Xaml::Controls::Controls::SelectionChangedEventArgs^ e
{
// get selected indexes
}
送信者 (ListView) のSelectedItemsプロパティをItemsプロパティと比較する必要があります。SelectedItems がコレクションに追加され、アイテムが選択された順序でコレクションから削除されたように見えます (ただし、これはどこにも記載されていません)。
にバインドするアイテムのタイプにインデックスプロパティを追加できますListView
。それ以外は-おそらくあなたは本当にインデックスを必要としないのですか?
受け取った提案で解決策を見つけました
auto v = itemsListView->SelectedItems;
auto l = itemsListView->Items;
std::list <unsigned int> v1;
for (int i=0; i < v->Size; i++)
{
unsigned int k;
l->IndexOf(v->GetAt(i),&k);
v1.push_back(k);
}