Context
I wanted to create a table viewer (3 columns) with my own content and label provider.Problem
I found out that, if I set the content provider and label provider before I added all the columns to the table viewer, it would show no content, or only the columns that I added before I set the label provider.Code
TableViewer tableViewer = new TableViewer(tabFolder, SWT.BORDER | SWT.FULL_SELECTION);
TableViewerColumn tableViewerColumn1 = new TableViewerColumn(tableViewer, SWT.NONE);
...
//call setters before all columns are added, which will cause no content display for the column 2 and 3
tableViewer.setContentProvider(new UserManagementContentProvider());
tableViewer.setInput(...);
...
TableViewerColumn tableViewerColumn2 = new TableViewerColumn(tableViewer, SWT.NONE);
TableViewerColumn tableViewerColumn3 = new TableViewerColumn(tableViewer, SWT.NONE);
...
tableViewer.setLabelProvider(new UserAssignmentLabelProvider());
tableViewer.setContentProvider(new UserManagementContentProvider());
tableViewer.setInput(...);
No comments:
Post a Comment