Сегодня я обновил версию 18.1.2 до самой последней версии библиотеки Dev Express VCL, которая является версией 19.2.4 от 22 января 2020 года, и адаптировал существующий минимальный проект cxGrid для использования новой фильтрации в стиле Excel , Он скомпилирован и выполнен без ошибок.
Вот что я сделал:
1 Моя существующая папка установки Devex (та, которую вы указываете установщику): D:\DevExpress VCL
2 Я переименовал D:\DevExpress VCL
в D:\DevExpress VCL Prev
3 Я запустил установщик 19.2.4, указав D:\DevExpress VCL
в качестве папки для установки.
Вы упоминаете, что компилятор жалуется на идентификаторы dxDefaultFilterPopupWindowMode
и ColumnPopupMode
. Вы говорите: «Несмотря на то, что dxFilterPopupWindow указано в предложении использования,
dxDefaultFilterPopupWindowMode
объявлено в строке 50 dxFilterPopUpWindow.Pas
const
dxDefaultFilterPopupWindowMode: TdxFilterPopupWindowMode = fpmClassic;
, а ColumnPopupMode
объявлено в строке 3361 cxGridTableView.Pas:
TcxGridTableFiltering = class(TcxCustomGridTableFiltering)
[...]
published
[...]
property ColumnPopupMode: TdxFilterPopupWindowMode read GetColumnPopupMode write SetColumnPopupMode default fpmDefault;
end;
Я настоятельно рекомендую установить версию 19.2.4, как я описал выше, а затем проверить, что путь поиска вашего проекта включает путь к источникам Devex. Конечно, если вы будете следовать методу, который я описал, путь поиска проекта не нужно менять, если он был скомпилирован ранее.
Если компилятор все еще жалуется на невозможность найти dxDefaultFilterPopupWindowMode
и ColumnPopupMode
, тогда при условии, что вы не компилируете свой проект для использования пакетов времени выполнения, единственная возможная причина, о которой я могу подумать, это то, что компилятор находит более ранние версии dxFilterPopUpWindow.Dcu и cxGridTableView.Dcu, которые каким-то образом имеют более поздние отметки даты чем соответствующие файлы .PAS - в этом случае я бы удалил все экземпляры Devex Dcu из моей системы и попробую еще раз. Чтобы убедиться, что компилятор компилирует версию исходных файлов Devex, которая, по вашему мнению, есть, отредактируйте cxGridTableView.Pas, добавив «стопор компилятора», такой как восклицательный знак в самом верху файла: если компилятор не жалуется на это при попытке скомпилировать ваш проект, вы будете знать, что он находит и использует другую версию файла .xasrid.able или cxGridTableView .Dcu.