2013-08-12 1 views
0

콤보 뷰어가 있으며 모델에 콤보 선택 항목이 자동으로 업데이트되도록 데이터 바인딩이 있어야합니다.Comboviewer 동적 콤보 항목을 사용한 데이터 바인딩

또한 콤보 항목을 동적으로 (기존 콤보 항목에) 추가해야합니다. 데이터 바인딩으로 어떻게 이것을 달성 할 수 있습니까?

데이터 바인딩에 익숙하지 않으므로 동적 항목 (콤보 항목)을 사용하여 데이터 바인딩을 수행하는 데 대한 좋은 자습서를 알려주십시오.

아래의 코드는 모델에 comboviewer 선택 바인딩이다

final IObservableValue entityComboObservable = ViewersObservables. 
observeSingleSelection(myComboViewer);   
final IObservableValue modelSelectedEntityObservable = BeansObservables. 
observeValue (cmpObj, Company.EMP_SELCTION);   
bindingCntxt.bindValue(modelSelectedEntityObservable, entityComboObservable); 

여기서 "cmpObj"는 comboviewer에 대한 입력으로 설정 될 개체의 목록을 포함 내 모델 목적

답변

1

이제 모델 ovservable을 만들

comboViewer.setContentProvider(new ObservableListContentProvider()); 
comboViewer.setLabelProvider(labelProvider); 
// input must be a List 
comboViewer.setInput(input); 
IViewerObservableValue swtObs = ViewersObservables.observeSingleSelection(comboViewer); 

그런 짓을하고 그것을 결합 할 수 swtObs

+0

콤보 선택이 작동합니다 ... 덕분에 –

0

아래 입력 사항을 관찰 할 필요가 있습니다.

org.eclipse.jface.databinding.viewers.ViewersObservables.observeInput(Viewer) 

ListObservable으로 관측 가능한 입력.

+0

제안 주셔서 감사합니다. 그러나 매우 데이터 바인딩에 새로운 오전 listobservable 바인딩하는 방법에 대한 자세한 내용을 주시겠습니까? –

+0

콤보 뷰어 선택 항목을 모델에 바인딩하기 위해 내 게시물을 편집했습니다. 그러나 당신이 동적으로 콤보 아이템에 새 아이템을 추가 할 수 있다면 도움이 될 것입니다. –