Zeileninformationen nach einem Doppelklick erhalten

7

Ich versuche, nach einem Doppelklick-Ereignis Zeileninformationen aus einem Datagrid abzurufen. Ich habe das Ereignis-Setup, aber jetzt muss ich nur die Funktion einrichten, um die Daten aus der Zeile abzurufen.

XAML:

%Vor%

C # (MVVM ViewModel):

%Vor%

Vielen Dank!

    
Josh 28.02.2012, 17:48
quelle

5 Antworten

6

Mit Caliburn ist es sehr einfach, übergeben Sie einfach $ dataContext auf Ihrem XAML:

%Vor%

Und ändern Sie Ihre Methode zu:

%Vor%

// BEARBEITEN Entschuldigung, die obige Lösung funktioniert nur, wenn sich die Aktion auf der Datenplatte selbst befindet ... Eine andere Lösung wäre, eine SelectedItem-Bindung zu haben und sie einfach für Ihre Methode zu verwenden:

%Vor%

und auf deinen Code:

%Vor%     
Leo 29.02.2012, 03:59
quelle
17

Alternativ können Sie dies tun:

%Vor%

Dann

%Vor%     
David Kiff 25.06.2013 13:22
quelle
1

(hoffe, es wird helfen) Ich bin mir nicht sicher über Ihren Fall, aber das ist, was ich in winforms mache:

%Vor%     
Andrew 28.02.2012 17:59
quelle
1

Sie können das tun, indem Sie die Steuerelementvorlage für die DataGridRows ändern, die von dem DataGrid verfügbar gemacht werden. Das folgende Beispiel verwendet WPF und das Aero-Design.

Das einzige, was ich getan habe, ist, Ihren vorherigen Aufruf call: Message.Attach zu entfernen und ihn in ein neues "placeholder" ContentControl zu verschieben, das den Rahmen (x: Name = DGR_Border) in der Kontrollschablone "default" umgibt. (Ich habe ContentControl verwendet, da es keine eigenen Visualisierungen enthält und ein MouseDoubleClick-Ereignis verfügbar macht.)

%Vor%

Die einzige andere Sache, die Sie tun müssen, ist, Ihre RowSelect () -Methode zu ändern, um einen Parameter des von Ihnen verwendeten Typs zu akzeptieren (ich nahm an, dass es sich um einen Filmtyp handelt).

%Vor%     
Adrian 29.02.2012 18:35
quelle
0

Mein Beispiel dort ist eine Spalte mit NAME "service_id". Sie können aber auch den Spaltenoffset int32 verwenden. Es gibt sogar eine ItemArray im DataRowView TYPE, die ausgeführt und heruntergefahren werden soll. Siehe System.Data namespace. Ihre DataGrid-Item-Source / Context beeinflusst die "Objekte", die Sie im DataGrid sehen. Aber wenn Sie die Typen debuggen, können Sie sie umwandeln und verwenden.

%Vor%     
phil soady 14.08.2012 08:35
quelle

Tags und Links