It looks like I figured it out myself.
I posted my code below, if anyone wants to refer to it.
Thanks!
//Instantiate a PresentationEx class that represents the PPTX file
PresentationEx pres = new PresentationEx(tbPPTpath.Text);
int iSlideCount = pres.Slides.Count;
for (int ind = 0; ind < iSlideCount; ind++)
{
//Access each slide
SlideEx sld = pres.Slides[ind];
foreach (ShapeEx shp in sld.Shapes)
{
string sTitleText = null;
string sTitleType = null;
try
{
sTitleText = ((AutoShapeEx)shp).TextFrame.Text.ToString();
sTitleType = ((AutoShapeEx)shp).Name.ToString();
}
catch (Exception ex)
{ }
if (!String.IsNullOrEmpty(sTitleText))
{
if (shp.IsTextHolder && sTitleType.Contains("Title"))
{
lbTitles.Items.Add("Slide " + (ind + 1).ToString() + ": " + sTitleText);
}
else if (shp.Placeholder != null && sTitleType.Contains("Title"))
{
lbTitles.Items.Add(((AutoShapeEx)shp).TextFrame.Text);
}
}
}