Можно ли редактировать данные на месте с помощью CListCtrl - если нет, может ли кто-нибудь предложить альтернативный элемент управления в MFC? - PullRequest
1 голос
/ 08 марта 2010

Я разрабатываю приложение MFC, в котором я хотел бы иметь сетку с двумя столбцами: редактируемую, в которой пользователь будет вводить данные, а приложение получит уведомление об этом. Количество строк может быть увеличено / уменьшено пользователем по своему усмотрению. Какой идеальный элемент управления MFC можно использовать для такого рода требований?

Это мой первый раз, когда я разрабатываю приложение MFC, поэтому не против, если оно звучит слишком нудисто:)

1 Ответ

3 голосов
/ 08 марта 2010

Это не нубийский вопрос. На самом деле вы столкнулись с проблемой, которая вызывает ошибки у каждого разработчика MFC с 15 лет: библиотека MFC не имеет встроенного Grid Control. Я полагаю, вы ищете что-то вроде Grid Control. Насколько я знаю, невозможно редактировать два столбца в CListCtrl. Редактировать можно только первый столбец «Метка».

Для элемента управления Grid вы должны искать соответствующие сторонние инструменты, которые можно добавить в ваши проекты, например, как элементы управления ActiveX. (Я помню, что старая Visual Studio 6 поставлялась с «MS FlexGrid», которую вы могли добавить с галереей компонентов в проект, но я никогда не работал с ней, поэтому я не знаю, хороший ли это выбор. возможно, достаточно для вашей цели.) Большинство сторонних Grid-контролей требуют лицензионных сборов, но вот одна (довольно мощная) сетка бесплатно (по крайней мере, бесплатно, но не лицензии):

http://www.codeproject.com/KB/miscctrl/gridctrl.aspx

(или гугл по "MFC Grid Control" или что-то в этом роде. Я думаю, что будет больше бесплатных сеток.) ​​

...