wpf selecteditem

wpf - ¿Cómo lanzar un System.Windows.Controls.SelectedItemCollection?



(3)

Bien, lo tengo solucionado. Seguí tratando de lanzarlo como

IList<PuzzleViewModel> collection = (IList<PuzzleViewModel>)param;

Lo que me dijo que no se podía convertir de SelectedItemCollection a IList ...

Esto es, de hecho, lo que necesitas hacer.

System.Collections.IList items = (System.Collections.IList)param; var collection = items.Cast<PuzzleViewModel>();

Tengo un método:

private void DeletePuzzle(object param) { }

param es un System.Windows.Controls.SelectedItemCollection , que obtuve de la propiedad SelectedItems de un WPF ListView .

De alguna manera, parece que no puedo lanzarlo de un objeto a algo útil. No puedo crear un System.Windows.Controls.SelectedItemCollection debido a su nivel de protección, y param no se IEnumerable a IList , ICollection o IEnumerable .

¿Cómo puedo iterar a través de los elementos de param?


Compruebe el tipo: System.Collections.Generic.IList<(Of <(ListViewDataItem>)>)


del reflector: -

[Category("Appearance"), Bindable(true), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public IList SelectedItems { get { return base.SelectedItemsImpl; } }

Los elementos seleccionados de ListView son un ID de IList, como para ver el método de llamada.