[ad_1]
Bonjour, j’utilise VS2015 Winforms, VC++. C++/CLI Avec mon application, j’essaie d’imprimer le rapport rdlc. Et j’obtiens l’erreur ci-dessous.
ne peut pas prendre l’adresse de ‘PrintRDLCReport::CreateStream’ à moins de créer une instance de délégué.
private: static Stream^ stream = gcnew MemoryStream(); public: static Stream^ CreateStream(String^ name, String^ fileNameExtension, Encoding^ encoding, String^ mimeType, bool willSeek){ //Stream^ stream = gcnew MemoryStream(); stream = gcnew MemoryStream(); //stream = gcnew FileStream(name + "." + fileNameExtension,FileMode::Create); m_streams->Add(stream); return stream; } public: static System::Void Export(LocalReport^ report, bool print){ PaperSize^ paperSize = m_pageSettings->PaperSize; Margins^ margins = m_pageSettings->Margins; print = true; String^ deviceInfo = String::Format(CultureInfo::InvariantCulture, "<DeviceInfo>" + "<OutputFormat>EMF</OutputFormat>" + "<PageWidth>{5}</PageWidth>" + "<PageHeight>{4}</PageHeight>" + "<MarginTop>{0}</MarginTop>" + "<MarginLeft>{1}</MarginLeft>" + "<MarginRight>{2}</MarginRight>" + "<MarginBottom>{3}</MarginBottom>" + "</DeviceInfo>", ToInches(margins->Top), ToInches(margins->Left), ToInches(margins->Right), ToInches(margins->Bottom), ToInches(paperSize->Height), ToInches(paperSize->Width)); cli::array<Warning^>^ warnings; m_streams = gcnew List<Stream^>(); report->Render("Image", deviceInfo, CreateStream, warnings); ????????????????????????? This above line CreateStream generates the error can't take address of 'PrintRDLCReport::CreateStream' unless creating delegate instance for each(Stream^ stream in m_streams) { stream->Position = 0; } if (print==true){ Print(); } }
Merci pour vos bons conseils, merci encore !
Ce que j’ai essayé :
Essayez d’imprimer le rapport RDLC directement sur l’imprimante
Solution 1
Voir votre question précédente sur ce même sujet : Aucune instance de fonction surchargée Microsoft::reporting::winforms::localreport::render[^].
[ad_2]
コメント