2012-03-31 6 views
0

내 표에서 내 열 중 하나에서 CheckComboxBox를 속성으로 설정했습니다. 문제는 프로그래밍 방식으로 항목을 채울 수 없다는 것입니다.TcxGrid의 cxCheckCombox 속성을 프로그래밍 방식으로 채우기

void __fastcall TfPln::tvDepACGetProperties(TcxCustomGridTableItem *Sender, 
      TcxCustomGridRecord *ARecord, TcxCustomEditProperties *&AProperties) 

{ 
    AProperties=cxCheckComboBox1->Properties; 
} 

하지만 내 양식 동결을 사용

! 목표는 양식 작성 이벤트의 데이터 세트에있는 데이터로 해당 열을 채우는 것입니다. 따라서 심지어 열의 Items 속성에 도달하지 못합니다!

그리드의 TcxCheckCombobox 항목을 채우는 방법은 무엇입니까?

나는 항목 TcxCheckComboBoxProperties(cxGrid1DBTableView1Company.Properties).Items.AddC heckItem(FieldByName('Company').AsString); 권리를 채우고이

procedure TForm1.FormCreate(Sender: TObject); 
begin 
    with Table1 do 
    begin 
    DisableControls; 
    First; 
    while not Eof do 
    begin 

TcxCheckComboBoxProperties(cxGrid1DBTableView1Company.Properties).Items.AddC 
heckItem(FieldByName('Company').AsString); 
     Next; 
    end; 
    First; 
    EnableControls; 
    end; 
end; 

라인을 델파이 코드가?

(C 언어) TcxCheckComboBoxProperties(tvDepAC->Properties)을 사용하지만 아이템 속성을 호출하려고하면 속성이 없습니다! 그건 TcxCheckComboBoxProperties(tvDepAC->Properties)->Items.AddCheckItem(i)이 맞지 않습니다 !!

무엇이 문제 일 수 있습니까 ??

도움이 필요합니다.

+0

Table1 레코드 집합의 크기에 따라 문제가 무엇인지 알 수 있지만 몇 가지 도움이 될 수 있습니다. 1) cxGrid1DBTableView1.BeginUpdate 및 EndUpdate를 사용하여 UI가 while 루프의 각 반복마다 새로 고침을 수행하지 않습니다. , 2) while 루프 내부에서 타입 캐스팅을 없애고 (지역 변수를 대신 설정), 3) while 루프 내에서 FieldByName을 사용하지 마십시오 (로컬 변수는 필드 목록에서 반복되는 조회를 피합니다). –

답변

0

그리드를 어떤 모드로 사용합니까? DataController는 TDataSource 객체 의해 TDataSet의 접속된다

  • 바운드 모드

(다큐먼트)에서 3 가지 가능성이있다.

  • 제공자 모드

DataController 사용자 정의 (정의) 데이터 소스에 접속되고, 필요에 따라 데이터가 요구된다. 데이터 컨트롤러가 데이터 소스에 연결되어 있지 않은

  • 약속 수동 기록 모드가 미리 채워져.

    바운드 모드에서는 그리드가 SQL 문에서 자동으로 채워집니다. 코드에서 더 많은 제어가 필요한 경우 공급자 모드를 사용합니다. 예를 들어 텍스트 파일에서 데이터를로드 할 수 있습니다. 언 바운드 컨트롤을 사용하여 모눈에 데이터를 추가합니다.

+0

을'bound' 모드로 만들었습니다. 데이터 소스에 연결했기 때문입니다. 당분간 나는 전체 행에 적용될 RepositoryItem 속성을 사용하고 있습니다. 어떻게 그것을 런타임에 할 ?? [EQGrid 6.52 and]를 사용하고'Items' 속성과 CheckStates에 도달 할 수 있습니까? –

+0

여기 스크린 샷 http://www.flickr입니다.com/photos/67246820 @ N08/6888244562/in/photostream –

+0

문제는 C++로 변환 할 수없는 Delphi 코드가 있다는 것입니다. 이 경우 델파이 만 Devexpress와 함께 사용하기 때문에 당신을 도울 수는 없을 것 같습니다. www.devexpress.com/Support/Center에서 Devexpress에 문의하십시오. –

관련 문제