[英]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.