1

DevExpress Quantum Grid の実用的なガイドを探しています。

マニュアルは 4015 ページの長さで、徹底的に書かれていますが、一度に詳細が多すぎるため、非常に読み応えがあります。私はこのグリッドのボーグに何年も抵抗してきましたが、今ようやく仕事の要件に同化しました。

ここでは同僚からの助けはありません。彼らはすべてコミュニケーション障害です。そして実際、彼らはほとんどこのツールに対処しているようで、うまく使っていないようです。たとえば、あるフェローは、バウンドモードまたはサーバーモードでは決して使用しないと主張しています。私には目的を打ち負かすようです。

通常のグリッドと同じくらい効果的に使用できるようにするための「入門用」または「ダミー用」のさまざまな助けをいただければ幸いです。挿入モードにバインドされていると、多くの奇妙な特異性が見つかりました。それがどのように機能しようとしているのかについて十分に知らないので、それが何をするのかを実際に説明することはできません. しかし、行を挿入するように要求すると、1 つのセルにデータが含まれた後に挿入しようとします。何か愚かなことが起こっていますが、その理由はわかりません。考えられる設定は何千もありますが、適切なオプションを選択するために適切なコントロールが選択されているかどうかさえわかりません.

4

1 に答える 1

3

初心者向けのヘルプに最適な場所は Devex の Web サイトです。例: 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;
于 2016-02-23T14:43:02.697 に答える