Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In order to delete this slide we will be using PowerPointApplication's Delete method. However, we have so far been working only in PowerPointTemplate. In order to take advantage of the methods in PowerPointApplication, we must first pass the completed template file to PowerPointApplication. This will be done in the code section of this tutorial. See Passing between Template and Application for more information.

Writing the Code

We will reuse the code from Part 1 and Part 2 of this tutorial. We will take out the Save call and add our new code for Part 3.

Code Block

//Code from parts 1 and 2
PowerPointTemplate pptt = new PowerPointTemplate();
pptt.Open(Page.MapPath("//templates//part1_template.pptx"));
DataBindingProperties dataProps = pptt.CreateDataBindingProperties();
object[] valuesArray = { "Project Name", "Project Date", "Review", "Leader Name", "Start Date", "Cost Estimate", "Project Summary" };
string[] columnNamesArray = {"Name", "Date", "ReviewStatus", "Leader", "Start", "Estimate", "Summary"};
pptt.BindData(valuesArray, columnNamesArray, "Proposal", dataProps);

5. Pass the Template object to PowerPointApplication so that Application methods can be used.

Code Block

PowerPointApplication ppta = new PowerPointApplication();
Presentation pres = ppta.Open(pptt);

7. We want to delete the last slide in our presentation, so we need to know how many slides there are. We can use Slides.Count to get this information.

Code Block

int numSlides = pres.Slides.Count;

6. Use the Slides.Delete method to delete the last slide. It takes an integer representing the index of the slide to delete as a parameter.

Code Block

pres.Slides.Delete(numSlides - 1);

7.Save the final presentation and stream it in the response.

Code Block

ppta.Save(pres, Page.Response, "Part2_Output.pptx", false);