Aufrufe von Membern aus abgeleiteten Klassen / Enter Taste im DataGridView
-
Hallo zusammen,
ich habe eine abgeleitete Klasse von DataGridView geschrieben um die Enter Taste anders zu verwenden (Habe nach Internet-Suche ein C# Beispiel umgeschrieben)und dort soll in einem Datengebundenen DataGridView eine neue Zeile erstellt werden wenn im im letzten Feld die Enter-Taste gedrückt wird.
Im C# Beispiel war die Zeile:
((BindingSource)base.DataSource).AddNew();
Ich bin noch zu neu und werde verrückt, ich begreife nicht wie ich diesen Vorgang Korrekt auf C++/CLI umschreibe.
Habe es versucht mit:((BindingSource)DataGridView::DataSource).AddNew();
Aber das ergibt nur Fehler (Ursachen verstehe ich zum Teil und komme nicht zur Lösung...)
Eine kurze Beschreibung zu dem was passiert wäre auch schön, damit die Sache von mir nicht nur abzuschreiben ist, sondern damit ich diese auch verstanden habe...;-)
Mein Ursprungsthread aus einem anderen Forum mit der funktionierenden Abwandlung der Enter-Taste:
http://forums.microsoft.com/MSDN-DE/ShowPost.aspx?PostID=1927337&SiteID=9
Kann mir jemand helfen bitte?
-
Hi,
wenns Dir nur darum geht die Funktion der Enter Taste zu ändern, brauchst du nur folgendes in das KeyDown Ereignis zu tippen:if (e.KeyCode == Keys.Return) e.SuppressKeyPress = True
Dann kannst du dir die Ableitung sparen...
-
Hi und schonma vielen Dank,
habe mit den verschiedenen Ereignissen vorher getestet, doch das verschieben nach Rechts nach Druck der Entertaste war das, was ich realisieren wollte.
Ich hatte so einiges probiert mit dem Ergebnis das er bei Druck der Entertaste immer nach unten sprang, zwar auch nach rechts, aber eine Zeile tiefer.
Nach Recherche im Internet und auch in diesem Forum bin ich bei genau dem Problem öfters angelangt, mit der Lösung eine von DataGridView abgeleitete Klasse zu erstellen, die Code-Beispiele waren aber alle in C#. Gut, auch kein Problem, halt umgeschrieben.
Also die eigene Klasse die ich unter dem Link gepostet hatte funktioniert prächtig und lässt mit dem Verständnis dieser Grundlage alles mögliche an Tastaturhandlings zu.Die obige Zeile ist nun mein Problem. Wenn das DataGridView Datengebunden ist verstehe ich die Zeile aus einem englischem C# Beispiel so, das die zugeordnete BindingSource die neue Zeile erstellen muss. Ein direkter Befehl an das DataGridView warf mir einen Fehler zurück das ich das Datengebundene DataGridView nicht direkt mit neuen Zeilen versehen kann.
Jetzt muss ich ja den Befehl in meiner Ableitung so gestalten das es immer funktioniert, in jedem von mir erstelltem DataGridView das ich von meiner neuen Klasse ableiten möchte um diese Steuerung zu übernehmen. Doch wie lautet die korrekte Syntax um das zu machen? Mein Vorschlag ist laut Compiler ja völlig daneben :):
((BindingSource)DataGridView::DataSource).AddNew();
-
Kann mir denn niemand die korrekte Syntax sagen bitte?