Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.418 Beiträge
 
Delphi 7 Professional
 
#11

AW: DevExpress Grid: Selection

  Alt 22. Mär 2018, 13:41
Ich finde das Beispiel (obwohl ich die Komponenten überhaupt nicht kenne und nie genutzt habe) sehr verständlich (interpretiere mal ziemlich frei):
Delphi-Quellcode:
procedure <AForm>.<AcxGridDBTableView>CanSelectRecord(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; var AAllow: Boolean);
var
  AView: TcxGridDBTableView;
  AColumn: TcxGridDBColumn;
begin
  AView := TcxGridDBTableView(Sender); // Das Grid für 'nen einfachen Zugriff.
  AColumn := AView.GetColumnByFieldName(<AFieldName>); // Die Spalte, die wir zum Vergleich heranziehen wollen.
  // ARecord ist der Datensatz, der geprüft werden soll (und nicht der, der angeklickt wurde).
  // AColumn.Index gibt die Position der Spalte an, welche im ARecord geprüft werden soll.
  AAllow := ARecord.Values[AColumn.Index] < 0; // Hier die Bedingung prüfen.

  // Aber:
  // Hier wird der Wert geprüft, der "zufällig" zuletzt den Focus zum Editieren hatte.
  // Der muss weder zum zu prüfenden Datensatz (ARecord) gehören, noch schon in der Datenbank stehen.
  AAllow := ContainsText(View.GetColumnByFieldName('ixBELArt').EditValue, conAllowedDocumentType);
end;
  Mit Zitat antworten Zitat