Try our conversational search powered by Generative AI!

Alexander Haneng
Jun 29, 2011
(2 votes)

Using EPiImage with Page Type Builder (PTB)

I have gotten a few questions about how to use EPiImage with PTB. So in this blog post I thought I would cover the basics.


People have been using EPiImage with PTB almost since the start of EPiImage, but with the new 2.5 version it is even easier.



Adding a EPiImageProperty to a PageType:

[PageTypeProperty(EditCaption = "Main image", Type = typeof(EPiImageProperty))]
public virtual EPiImagePropertyData MainImage
    get; set;


You can access the property directly:

Image url: <%=CurrentPage.MainImage.ImageUrl%>
Image description: <%=CurrentPage.MainImage.ImageDescription%>


Or use it with EPiImageResizer:

<%@ Register TagPrefix="EPiImage" TagName="EPiImageResizer" 
    Src="~/EPiImage/UserControls/EPiImageResizer.ascx" %>
<EPiImage:EPiImageResizer ID="Image" 
    Transformation="ScaleToFit" runat="server" />



Adding a EPiImageGalleryProperty to a PageType:

[PageTypeProperty(EditCaption = "Image gallery", Type = typeof(EPiImageGalleryProperty))]
public virtual EPiImageGalleryImageCollection ImageGallery


You can access the property directly:

foreach (EPiImageGalleryImage Image in CurrentPage.ImageGallery)
  Image Url: <%= Image.ImageURL %><br />
  Link Url: <%= Image.LinkURL %><br />
  Description: <%= Image.Description %><br />


Or using EPiImageGalleryViewer:

<%@ Register TagPrefix="EPiImage" 
<EPiImage:EPiImageGalleryViewer ID="Viewer"
    runat="server" />


Or using EPiImageGalleryGrid:

<%@ Register TagPrefix="EPiImage" 
    Src="~/EPiImage/UserControls/EPiImageGalleryGrid.ascx" %>
<EPiImage:EPiImageGalleryGrid ID="Grid" 
    ThumbnailHeight="150" ThumbnailWidth="150" 
    DescriptionHeight="20" DownloadLinkHeight="20" 
    LinkThumbnailsTo="OriginalImage" runat="server" />


Download EPiImage

For more information about EPiImage and to download the module visit the EPiImage EPiCode page.



Posted by

Jun 29, 2011


Please login to comment.
Latest blogs
The A/A Test: What You Need to Know

Sure, we all know what an A/B test can do. But what is an A/A test? How is it different? With an A/B test, we know that we can take a webpage (our...

Lindsey Rogers | Apr 15, 2024

.Net Core Timezone ID's Windows vs Linux

Hey all, First post here and I would like to talk about Timezone ID's and How Windows and Linux systems use different IDs. We currently run a .NET...

sheider | Apr 15, 2024

What's new in Language Manager 5.3.0

In Language Manager (LM) version 5.2.0, we added an option in appsettings.json called TranslateOrCopyContentAreaChildrenBlockForTypes . It does...

Quoc Anh Nguyen | Apr 15, 2024

Optimizely Search & Navigation: Boosting in Unified Search

In the Optimizely Search & Navigation admin view, administrators can set a certain weight of different properties (title, content, summary, or...

Tung Tran | Apr 15, 2024