如何使用 MVVM 模式從代碼中選擇幾行到 ListView 中?我使用的ListView是由一個已經不在的隊友制作的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;? ? ? ? }我這樣使用這個列表視圖:<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 但這對 ListView 的選擇沒有影響:(編輯1:?“多選列表框”主題不能幫助我解決我的問題,因為默認情況下它沒有在ListViews中實現,在我的問題中我解釋說它是一個自制的ListView以及如何將“SelectedItemsList”添加到默認ListView 。
ListView 在 MVVM 中以編程方式選擇多個項目
慕工程0101907
2023-08-20 09:46:53