c# - How can I prompt a user to choose a location to save a file? -
in main form have method called savepdfdocument():
private void savepdfdocument() { pdfwrapper pdfwrapper = new pdfwrapper(); pdfwrapper.createpdf(horizontalpicturescroller1.getpictures(), "pdfdocument.pdf"); } as can see, right i'm manually typing in name file. i'd ask user choose save , name give it.
this createpdf() method i'm using above:
public void createpdf(list<system.drawing.image> images, string filename) { if (images.count >= 1) { document document = new document(pagesize.letter); try { // step 2: // create writer listens document // , directs pdf-stream file pdfwriter.getinstance(document, new filestream(filename, filemode.create)); // step 3: open document document.open(); foreach (var image in images) { itextsharp.text.image pic = itextsharp.text.image.getinstance(image, system.drawing.imaging.imageformat.jpeg); if (pic.height > pic.width) { //maximum height 800 pixels. float percentage = 0.0f; percentage = 700 / pic.height; pic.scalepercent(percentage * 100); } else { //maximum width 600 pixels. float percentage = 0.0f; percentage = 540 / pic.width; pic.scalepercent(percentage * 100); } pic.border = itextsharp.text.rectangle.box; pic.bordercolor = itextsharp.text.basecolor.black; pic.borderwidth = 3f; document.add(pic); document.newpage(); } } catch (documentexception de) { console.error.writeline(de.message); } catch (ioexception ioe) { console.error.writeline(ioe.message); } // step 5: close document document.close(); } } any suggestions?
did take @ savefiledialog?
private void button1_click(object sender, system.eventargs e) { stream mystream ; savefiledialog savefiledialog1 = new savefiledialog(); savefiledialog1.filter = "txt files (*.txt)|*.txt|all files (*.*)|*.*" ; savefiledialog1.filterindex = 2 ; savefiledialog1.restoredirectory = true ; if(savefiledialog1.showdialog() == dialogresult.ok) { if((mystream = savefiledialog1.openfile()) != null) { // code write stream goes here. mystream.close(); } } }
Comments
Post a Comment