ребята,
моя программа имеет много TableViews. Во всех таблицах кроме одной сортировки работает. Я не могу найти свою ошибку в этом единственном TableViews. При нажатии на заголовок это выглядит как его сортировка, но не обновление представления. Если я изменю вкладку и вернусь go, TableView будет отсортирован. Если выбрана строка и я щелкаю заголовок, выбранный цвет сортируется в нужном месте, но не в данных таблицы.
У меня есть ObservableList и TableView:
private ObservableList<ProjectViewModel> projectViewModelList = null;
// some more TableColumns
@FXML
TableColumn<ProjectViewModel, String> TableColumnToolchainStepphase;
@FXML
TableView<ProjectViewModel> TableViewToolchain;
моя инициализация :
@FXML
public void initialize(){
//...
initializeLists();
//...
initTableViewToolchain();
initTableColumns();
//...
}
private void initializeLists(){
projectViewModelList = FXCollections.observableArrayList();
}
private void initTableViewToolchain(){
TableViewToolchain.setItems( projectViewModelList );
}
private void initTableColumns(){
TableColumnToolchainStepphase
.setCellValueFactory( new Callback<CellDataFeatures<ProjectViewModel, String>, ObservableValue<String>>() {
@Override
public ObservableValue<String> call( CellDataFeatures<ProjectViewModel, String> param ){
String string = param.getValue().getStepphaseString();
return new ReadOnlyStringWrapper( string );
}
} );
}
население моей таблицы:
private void setProjectViewModelList( Collection<ProjectViewModel> projectViewModelCollection ){
projectViewModelList.clear();
projectViewModelList.setAll( projectViewModelCollection );
}
Где я go ошибся?