vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Neuen Wert einer DataGridView-Zelle auslesen 
Autor: Bitschieber
Datum: 04.07.08 16:02

Hallo Melkor, hallo Forum,

ich denke, dass ich eine Lösung habe (sie mag zwar nicht die eleganteste sein, funktioniert aber):

Der Edit-Modus einer Zeile im DataGridView (= DGV), in der Daten verändert wurden, wird ja dann beendet, wenn diese den Fokus verliert (entweder durch Auswahl einer neuen Zeile im DGV oder dadurch dass das DGV den Fokus verliert) - dadurch wird ja auch die angebundene DataTable aktualisiert.
Somit habe ich mir gedacht, dass man den Fokus-Verlust des DGV ja auch zwangsweise herbeiführen kann, indem man beim MouseLeave-Ereignis des DGV (auch wenns Melkor jetzt wahrscheinlich langsam nicht mehr hören kann ) ausnutzt, um ein anderes Control der aktiven Form zu aktivieren.

Bei folgendem Quellcode wird in der MsgBox -1 angezeigt, wenn die CheckBox in der ersten Spalte angeklickt und dann der Mauszeiger aus dem DGV bewegt wird:
Private Sub DGV1_MouseLeave(ByVal Sender As Object, ByVal e As _
  System.EventArgs) Handles DGV1.MouseLeave
 
    Dim cm As CurrencyManager = CType(Me.BindingContext DGV1.DataSource, _
    DGV1.DataMember), CurrencyManager)
    Dim X as Integer
 
    If Me.DGV1.IsCurrentCellDirty = True Then
        Me.btnTagEdit.Select()
        X = Cint(CType(cm.Current, DataRowView((0))
        MsgBox(X)
    End If
 
End Sub
"Im Einsatz" sieht die kleine Sub jetzt so aus:
Private Sub DGV1_MouseLeave(ByVal Sender As Object, ByVal e As _
  System.EventArgs) Handles DGV1.MouseLeave
 
    If DGV1.IsCurrentCellDirty = True Then Me.btnTagEdit.Select()
 
End Sub
Natürlich muss dabei sicher gestellt sein, dass btnTagEdit angezeigt wird und selektierbar ist, sonst kommt es zur Fehlermeldung.

Wenn jemand noch eine bessere Lösung weiß - ich bitte darum.

MfG Bitschieber
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Neuen Wert einer DataGridView-Zelle auslesen6.394Bitschieber02.07.08 14:59
Re: Neuen Wert einer DataGridView-Zelle auslesen5.116Melkor02.07.08 15:06
Re: Neuen Wert einer DataGridView-Zelle auslesen5.691Bitschieber02.07.08 15:12
Re: Neuen Wert einer DataGridView-Zelle auslesen5.069Melkor02.07.08 15:43
Re: Neuen Wert einer DataGridView-Zelle auslesen5.081Bitschieber02.07.08 16:37
Re: Neuen Wert einer DataGridView-Zelle auslesen4.953Melkor02.07.08 17:22
Re: Neuen Wert einer DataGridView-Zelle auslesen4.931Bitschieber03.07.08 14:16
Re: Neuen Wert einer DataGridView-Zelle auslesen5.794Melkor03.07.08 15:03
Re: Neuen Wert einer DataGridView-Zelle auslesen5.109Bitschieber03.07.08 16:58
Re: Neuen Wert einer DataGridView-Zelle auslesen4.889Melkor03.07.08 18:17
Re: Neuen Wert einer DataGridView-Zelle auslesen5.373Bitschieber04.07.08 10:42
Re: Neuen Wert einer DataGridView-Zelle auslesen4.961Melkor04.07.08 10:54
Re: Neuen Wert einer DataGridView-Zelle auslesen5.030Bitschieber04.07.08 11:26
Re: Neuen Wert einer DataGridView-Zelle auslesen5.223Bitschieber04.07.08 16:02

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel