簡體   English   中英

為什么以前選擇的GridView項目不顯示為選中狀態?

[英]Why don't previously selected GridView items show as selected?

我有一個使用GridView來顯示項目集合的Windows 8應用程序。 我已經使用C#和XAML創建了該應用程序。 GridView是多選的。

當用戶離開GridView頁面時,我使用以下navigationHelper_SaveState().選中網格中的哪些項目保存到應用程序狀態: navigationHelper_SaveState().

當用戶返回到GridView頁面時,我想重新選擇先前選擇的項目。

我已經確認保存和加載狀態均有效。

但是,當用戶返回頁面時,先前選擇的項目不會被選擇。 navigationHelper_LoadState(). 我這樣做是為了選擇所有先前選擇的項目:

for (int i = 0; i < numPrevSelectedItems; i++) {    
  ItemsGridView.SelectedItems.Add(items[i]);
}

在StackOverflow的其他地方,我讀到使用SelectedItems.Add()應該可以工作。 但是,它對我不起作用。 當用戶返回頁面時,不會明顯選擇先前選擇的項目。

有趣的是, ItemsGridView.SelectAll(); 確實有效。

使其正常工作的最佳方法是什么?

您可以執行以下操作:

// Get the selected rows
DataGridViewSelectedRowCollection SelectedRowsCollection = ItemsGridView.SelectedRows;

// Clear your ItemsGridView selected rows (Just for testing the following code)
ItemsGridView.ClearSelection();

// Get your previous selected rows again.
foreach (DataGridViewRow item in SelectedRowsCollection)
{
    int idx = ItemsGridView.Rows.IndexOf(item);
    ItemsGridView.Rows[idx].Selected = true;
}

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM