Добавить отдельный столбец в cxGrid и использовать для целей выбора (флажок)

Я не хочу добавлять поле базы данных в свою фактическую базу данных для использования в целях выбора, поэтому я решил использовать возможность cxGrid добавлять отдельное поле в сетку. Я добавляю поле, называю его (выбираю), меняю его свойство на свойство «флажок», но, похоже, я не могу его использовать, поскольку его нельзя выбрать в сетке. Он ведет себя как только для чтения. Как я могу включить такую ​​​​вещь? Кроме того, как вы потом манипулируете такой выбранной записью в сетке? (пример: я хочу вставить выбранную запись под другую дату).

невозможно выбрать


person user763539    schedule 04.11.2013    source источник
comment
Какой набор данных вы используете. Некоторые наборы данных могут использовать временное поле. Это поле не связано с базой данных.   -  person Ravaut123    schedule 04.11.2013
comment
Если вы спрашиваете, можете ли вы иметь столбец флажка для чтения/записи, который не привязан к столбцу данных, это, безусловно, раньше (во времена версии 3 Devex's Quantum Grid), и где-то я нашел их документацию о том, как сделать это. К сожалению, мне не удалось найти его только сейчас. ISTR, что речь шла о добавлении (в коде) несвязанного контрольного столбца TdxTreeList в сетку (причина, которую я помню, заключалась в том, что я был удивлен, что QG разрешил несвязанный столбец в сетке с привязкой к данным), а затем обработка события OnMouseUp для переключения состояние флажка. Было это лет 10 назад, правда...   -  person MartynA    schedule 04.11.2013
comment
Кстати, я также заметил, что смысл использования несвязанного столбца заключался в том, что он позволял состоянию флажка быть независимым от данных в наборе данных. Думаю, похоже на то, что упоминал @Ravault123, но реализовано по-другому.   -  person MartynA    schedule 04.11.2013
comment
используя sqlite с Unidac.   -  person user763539    schedule 04.11.2013
comment
Добавьте новое поле как fkInternalCalc в набор данных unidac (TFDTable). Также установите для Tcxgrid.TcxGridDBTableView.DataController.DataModeController.GridMode значение True.   -  person Ravaut123    schedule 04.11.2013


Ответы (2)


Несколько вещей, которые вам нужно сделать. 1. Задайте свойство ValueType нового поля. 2. Задайте свойство DataController.KeyFieldName.

См. https://www.devexpress.com/Support/Center/Question/Details/A1095 для получения пошаговых инструкций от DevExpress.

person Sam M    schedule 04.11.2013

Нажмите checkbox column->databinding->valuetype,

Измените valuetype на boolean

Надеюсь, поможет.

person Hope    schedule 25.07.2018
comment
Измените тип значения на логический - person Hope; 25.07.2018
comment
Добавьте этот комментарий к ответу, потому что ожидается, что ответ на один вкладыш скоро будет удален, а также объясните, как он будет полезен другим будущим читателям. - person Parth Pandya; 25.07.2018