Laden...

WPF DataGrid - Binding auf SelectedItems :o

Erstellt von ErikM vor 10 Jahren Letzter Beitrag vor 10 Jahren 12.005 Views
E
ErikM Themenstarter:in
39 Beiträge seit 2011
vor 10 Jahren
WPF DataGrid - Binding auf SelectedItems :o

Hellöle,

ich versuche mittels Binding die SelectedItems eines Datagrids einzufangen.
Das scheint allerdings so nicht direkt machbar zu sein 😮

Ich arbeite normalerweise in WPF nach dem MVVM-Pattern und für mich stellt sich die Frage wie ich das sinnvoll lösen kann, wenn ich schon nicht auf Datagrid.SelectedItems binden darf :ö

Hat irgendwer eine Idee dazu ?

Mit freundlichen Grüßen

I
57 Beiträge seit 2011
vor 10 Jahren

Im Eventhandler SelectionChanged einfach ein Command im VM triggern, als parameter die removed/added items übergeben.

Man muss auch nicht immer peinlichst genau ein Pattern verfolgen, wenn es einem im Weg steht.

R
212 Beiträge seit 2012
vor 10 Jahren

Wiso kannst du nicht auf Datagrid.selectedItems binden, ich hab da keine probleme mit.

Was veruchst du den überhaupt an die eigenscahft zu binden?

6.911 Beiträge seit 2009
vor 10 Jahren

Hallo ErikM,

was bindest du denn an das DataGrid?

Ggf. Selector.IsSynchronizedWithCurrentItem auf true setzen und zum Binden eine CollectionViewSource verwenden.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

1.552 Beiträge seit 2010
vor 10 Jahren

Hallo Leute,

ich glaub hier geht komplett unter dass es hier um SelectedItems geht und nicht um SelectedItem. SelectedItems ist eben keine DependencyProperty und desshalb kann man auch nicht dagegen binden. Ich hatte das Problem auch mal. Ich glaub mich erinnern zu können, dass ich ein AttachedProperty programmiert habe, müsste aber heute Abend nachschauen.

Edit: Link zu einer Lösung welche ich nach kurzer Suche gefunden habe: How to Databind to a SelectedItems property in WPF
Managing Multiple selection in View Model

Gruß,
Michael

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp

E
ErikM Themenstarter:in
39 Beiträge seit 2011
vor 10 Jahren

Guten Morgen,

also ich hab das mittlerweile geregelt bekommen :3

ich verwende folgendes


<DataGrid Name="dataGrid"
 <i:Interaction.Triggers>
                <i:EventTrigger EventName="SelectionChanged">
                    <i:InvokeCommandAction Command="{Binding SelectionChanged}" CommandParameter="{Binding SelectedItems,ElementName=dataGrid}">
                    </i:InvokeCommandAction>
                </i:EventTrigger>
            </i:Interaction.Triggers>

//.....

</DataGrid>


Im ViewModel führt er dann jedesmal das Command SelectionChanged aus und dort kann ich dann mit den SelectedItems arbeiten :3

"Danke" für die Anworten..