void draw_control::xlsx_convert(oox::xlsx_conversion_context & Context) { if (!control_id_) return; oox::forms_context::_state & state = Context.get_forms_context().get_state_element(*control_id_); if (state.id.empty()) return; if (state.ctrlPropId.empty()) { std::wstring target; state.ctrlPropId = Context.get_mediaitems().add_control_props(target); std::wstringstream strm; form_element* control = dynamic_cast<form_element*>(state.element); if (control) { control->serialize_control_props(strm); } Context.add_control_props(state.ctrlPropId, target, strm.str()); } Context.get_drawing_context().start_frame(); Context.get_drawing_context().set_control(state.ctrlPropId); common_xlsx_convert(Context); Context.get_drawing_context().end_frame(); Context.get_drawing_context().clear(); }