Code, um zu überprüfen, ob eine Zelle eines DataGrids gerade bearbeitet wird

8

Gibt es eine einfache Möglichkeit, zu überprüfen, ob sich das DataGrid gerade im EditMode befindet (ohne dass es zu BeginningEdit und CellEditEnding kommt)

    
HCL 14.07.2010, 15:52
quelle

4 Antworten

5

Ok, ich habe keine einfache Lösung gefunden und niemand hat mich auf einen hingewiesen. Der folgende Code kann verwendet werden, um einem DataGrid eine angefügte Eigenschaft IsInEditMode hinzuzufügen. Hoffe es hilft jemandem:

%Vor%

Um es zu verwenden, setzen Sie auf dem Datagrid die ProcessIsInEditMode-Eigenschaft auf true:

%Vor%

Stellen Sie sicher, dass die IsInEditMode-Eigenschaft mit dem Modus des DataGrids synchronisiert ist. Wenn Sie auch die Bearbeitungszelle haben wollen, ändern Sie den Code in BeginningEdit accorringly.

    
HCL 14.07.2010, 16:30
quelle
7

Es scheint, dass Sie diese Information auch aus der Items-Ansicht bekommen können, nämlich das funktioniert:

%Vor%

Ich habe das nicht bestätigt, aber höchstwahrscheinlich könnten Sie diese Flags in einem Viewmodel abrufen, wenn Ihre gebundene Auflistung eine IEditableCollectionView bereitstellt.

    
flolim 16.07.2013 09:13
quelle
3

Ich habe eine kürzere Problemumgehung gefunden (VB.NET/C #):

VB.NET

%Vor%

C #:

%Vor%     
Shimmy 21.11.2010 02:58
quelle
0

Alle obigen Antworten mit IsEditing auf dem Datagridrow oder IsEdittitngItem in der IEditableCollectionView sind teilweise Antworten auf mich:

Wenn der Benutzer edition eingibt, dann auf irgendeine andere Zelle klickt, wird das EndEdit-Ereignis ausgelöst, aber das DataGridRow hat immer noch die Eigenschaft IsEditing to True !!! Und wenn Sie versuchen, die DataGridCell verantwortlich zu finden, ist seine IsEditingProperty immer falsch ... Ich denke, es ist ein Fehler. Und um das gewünschte Verhalten zu haben, musste ich diesen hässlichen Workaround schreiben

%Vor%

Dies erzwingt im Grunde, dass das Raster IsEditing = false auf dem Datagridrow setzt, wenn eine Zelle die Bearbeitung stoppt.

    
Linken 11.05.2016 11:51
quelle

Tags und Links