簡體   English   中英

Xamarin 表單 CollectionView 預選不起作用

[英]Xamarin forms CollectionView preselected not working

作為標題,我正在使用集合視圖並希望進行默認選擇,但它無法正確顯示。

下面是我的部分代碼:

這不起作用,第一個元素沒有突出顯示

CategoryCollection.ItemsSource = _categoryRepository.Get(); // list of object
CategoryCollection.SelectedItem = _categoryRepository.Get()[0];

這可以工作,第一個元素是highlight(selected):

var temp = _categoryRepository.Get();
CategoryCollection.ItemsSource = temp ;
CategoryCollection.SelectedItem = temp[0];

我試過覆蓋對象等於函數和運算符 ==,兩者都不起作用。

我認為這是因為您沒有將數據分配給同一個引用對象。

_categoryRepository.Get(); _categoryRepository.Get()[0]; 也許是兩個不同的參考。

當您設置CategoryCollection.ItemsSource = _categoryRepository.Get(); ,就像是

var list1 = _categoryRepository.Get();
CategoryCollection.ItemsSource = list1;

當你CategoryCollection.SelectedItem = _categoryRepository.Get()[0]; ,就像是

var list2 = _categoryRepository.Get();
CategoryCollection.SelectedItem = list2[0];

但是 list1 和 list2 可能不是同一個引用對象。所以它無法識別選擇項。

但是,當您使用

var temp = _categoryRepository.Get();
CategoryCollection.ItemsSource = temp ;
CategoryCollection.SelectedItem = temp[0];

temp 始終是唯一的,因此它可以識別選擇項。

暫無
暫無

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

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