我正在寻找DevExpress Quantum Grid的实用指南。
本手册长达4015页,虽然它是彻底的,但它是一个大的重读,同时具有太多的细节。多年来我一直在抵抗这个Borg of a grid,但现在我终于被工作要求所吸收了。
我没有同事的帮助。他们都受到了沟通的挑战。事实上,他们似乎主要是应对这个工具,而不是很好地使用它。例如,一位研究员坚持从不在绑定或服务器模式下使用它。它似乎打败了我的目的。
“开始使用”的任何帮助,或“傻瓜”的帮助。让我像普通电网一样有效地使用它的多样性将不胜感激。我在插入模式绑定中发现了很多奇怪的特性。我无法解释它的作用,因为我对它的工作原理不太了解。但是当我要求它插入一行时,它会尝试在一个单元格有数据后插入。有点蠢,但我不知道为什么。它可能有数以千计的设置,我甚至不确定我是否选择了正确的控件以使我找到合适的选项。
答案 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;