如何使用 MVVM 模式從代碼中選擇幾行到 ListView 中?我使用的ListView是由一個(gè)已經(jīng)不在的隊(duì)友制作的public static readonly DependencyProperty SelectedItemsListProperty = DependencyProperty.Register("SelectedItemsList" , typeof(IList) , typeof(SrListView) , new PropertyMetadata(null));(...)public IList SelectedItemsList? ? ? ? {? ? ? ? ? ? get? ? ? ? ? ? {? ? ? ? ? ? ? ? return ( IList )GetValue(SelectedItemsListProperty);? ? ? ? ? ? }? ? ? ? ? ? set? ? ? ? ? ? {? ? ? ? ? ? ? ? SetValue(SelectedItemsListProperty , value);? ? ? ? ? ? }? ? ? ? }(...)private void SrListView_SelectionChanged(object sender , SelectionChangedEventArgs e)? ? ? ? {? ? ? ? ? ? SelectedItemsList = SelectedItems;? ? ? ? }我這樣使用這個(gè)列表視圖:<CustomListView SelectionMode="Extended"? ? ? ? ? ? ? ? ItemsSource="{Binding ocPackages}"? ? ? ? ? ? ? ? SelectedItem="{Binding objSelectedPackage}"? ? ? ? ? ? ? ? SelectedItemsList="{Binding ilSelectedPackages, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"></CustomListView>? ? ? ? private IList _ilSelectedPackages; // = new ArrayList()? ? ? ? public IList ilSelectedPackages? ? ? ? {? ? ? ? ? ? get? ? ? ? ? ? {? ? ? ? ? ? ? ? return _ilSelectedPackages;? ? ? ? ? ? }? ? ? ? ? ? set? ? ? ? ? ? {? ? ? ? ? ? ? ? _ilSelectedPackages = value;? ? ? ? ? ? ? ? OnPropertyChanged(nameof(ilSelectedPackages));? ? ? ? ? ? }? ? ? ? }ilSelectedPackages.Clear();ilSelectedPackages.Add(objDTO_PackageToSelect);我嘗試清除然后填充 ilSelectedPackages 但這對(duì) ListView 的選擇沒(méi)有影響:(編輯1:?“多選列表框”主題不能幫助我解決我的問(wèn)題,因?yàn)槟J(rèn)情況下它沒(méi)有在ListViews中實(shí)現(xiàn),在我的問(wèn)題中我解釋說(shuō)它是一個(gè)自制的ListView以及如何將“SelectedItemsList”添加到默認(rèn)ListView 。
ListView 在 MVVM 中以編程方式選擇多個(gè)項(xiàng)目
慕工程0101907
2023-08-20 09:46:53