Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > CMFCPropertyGridProperty изменение содержимого


Автор: Abradox 7.3.2012, 15:11
Всем привет! Собственно столкнулся с проблемой:

создаю элемент 
Код

m_property = new CSomePropertyGridCtrl;
m_property->Create(WS_VISIBLE | WS_CHILD, CRect(0,10,100,100), this, 3);


далее добавляю элемент типа int

Код

CMFCPropertyGridProperty* pContainer = new CMFCPropertyGridProperty(_T("Опции контейнера"));
    
    
    pContainer->AddSubItem( new CMFCPropertyGridProperty(_T("Id"),(_variant_t)0, _T("id задает порядок панелей внутри группы")));



далее по коду необходимо изменить данное поле:
Код

ptrProp - указатель на CMFCPropertyGridProperty
ptrProp->GetSubItem(0)->SetValue((_variant_t)ptrContainer->id);// тут выкидывает исключение
...
ptrProp->GetSubItem(2)->SetValue((_variant_t)ptrContainer->name.c_str()); // тут все работает нормально


при попытке переписать значение поля CMFCPropertyGridProperty( тип int ) выкидывает исключение в файле afxpropertygridctrl.cpp в строке 578
причем это только для полей в которых хранится целочисленное значение. для аналогичных строковых все нормально работает.
в чем проблема? возможно я как - то неправильно изменяю значения ячеек таблицы  CMFCPropertyGridProperty??


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)