DevExpress Quantum Grid简单指南

时间:2016-02-23 13:43:49

标签: delphi devexpress quantumgrid

我正在寻找DevExpress Quantum Grid的实用指南。

本手册长达4015页,虽然它是彻底的,但它是一个大的重读,同时具有太多的细节。多年来我一直在抵抗这个Borg of a grid,但现在我终于被工作要求所吸收了。

我没有同事的帮助。他们都受到了沟通的挑战。事实上,他们似乎主要是应对这个工具,而不是很好地使用它。例如,一位研究员坚持从不在绑定或服务器模式下使用它。它似乎打败了我的目的。

“开始使用”的任何帮助,或“傻瓜”的帮助。让我像普通电网一样有效地使用它的多样性将不胜感激。我在插入模式绑定中发现了很多奇怪的特性。我无法解释它的作用,因为我对它的工作原理不太了解。但是当我要求它插入一行时,它会尝试在一个单元格有数据后插入。有点蠢,但我不知道为什么。它可能有数以千计的设置,我甚至不确定我是否选择了正确的控件以使我找到合适的选项。

1 个答案:

答案 0 :(得分:3)

初学者帮助的最佳位置是Devex的网站,例如: https://www.devexpress.com/Support/Center

正如我认为您已经注意到的,TcxGrid(现在是Quantum Grid)的问题是其过多的属性,嵌套属性等等。他们的演示显示了网格可以做什么,但找到通过对象检查器使它们工作的设置的方法是一个噩梦。 当然,当你开始在OI中玩游戏时,你所做的事情会阻止它的工作,并且你的步骤可能会非常困难。

所以,我认为一个开始的好地方是一个完全用代码创建网格的项目,这样除了你在代码中明确设置的内容之外,所有东西都会被默认。正如您所看到的,实际上很少需要做一个简单的,数据绑定的网格在基本级别工作。

试试这个

type
  TForm1 = class(TForm)
    CDS1: TClientDataSet;
    CDS1ID: TAutoIncField;
    CDS1Marked: TBooleanField;
    CDS1Value: TStringField;
    DS1: TDataSource;
    DBNavigator1: TDBNavigator;
    cxGrid1DBTableView1: TcxGridDBTableView;
    cxGrid1Level1: TcxGridLevel;
    cxGrid1: TcxGrid;
    procedure FormCreate(Sender: TObject);
  public
    cxGrid : TcxGrid;
    cxLevel : TcxGridLevel;
    cxView : TcxGridDBTableView;
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
var
  i : Integer;
begin
  CDS1.IndexFieldNames := 'ID';
  CDS1.CreateDataSet;

  for i := 1 to 5 do begin
    CDS1.Insert;
    CDS1.FieldByName('Marked').AsBoolean := Odd(i);
    CDs1.FieldByName('Value').AsString := 'Value  ' + IntToStr(i);
    CDS1.Post;
  end;

  CDS1.First;

  cxGrid := TcxGrid.Create(Self);
  cxGrid.Parent := Self;
  cxGrid.Width := 250;

  cxLevel := cxGrid.Levels.Add;
  cxLevel.Name := 'Firstlevel';

  cxView := cxGrid.CreateView(TcxGridDBTableView) as TcxGridDBTableView;
  cxView.Name := 'ATableView';

  cxLevel.GridView := cxView;

  cxView.DataController.DataSource := DS1;

  cxView.DataController.CreateAllItems;

end;