This project is read-only.

Display not being called in driver

Topics: Customizing Orchard
May 4, 2016 at 3:46 PM
I created a containable content type, and a second content type with a container in it, the idea being to create a page based on the second type that would list the first. Which it does, but I wanted to try customising the layout... So I made some changes to the razor file.

It went from
@model dynamic
@model dynamic
<div id="main">

    <div id="left" style="float:left;width:40%">
description goes here
    <div id="right" style="float:right;width:55%">
list goes here
So I thought I'd be able to go into the driver file, and pull out my description text, and my list and put those in my view... Only the Display method in it never gets called, it uses BuildDisplay from the ContentPartDriver in the Orchard.Framework project, I put break points in both files and I could see the constructor in my part's driver file being hit, but not the Display method, it was going into the ContentPartDriver. I can't figure this one out.

My driver file looks like this
public class InsightPartDriver : ContentPartDriver<InsightPart>
        private readonly INotifier _notifier;
        private const string TemplateName = "Parts/InsightPart";

        public Localizer T { get; set; }

        public InsightPartDriver(INotifier notifier)
            _notifier = notifier;
            T = NullLocalizer.Instance;

        protected override DriverResult Display(InsightPart part, string displayType, dynamic shapeHelper)
            return ContentShape("Parts_InsightPart",
                () => shapeHelper.Parts_InsightPart(ContentItem: part.ContentItem));

     //code omitted here
May 4, 2016 at 3:57 PM
Okay - one part of the puzzle solved
I tracked it into the driver file for Orchard.Lists, which gave me the name of the shapes that are being rendered.

I don't want to use these - I had thought that I could use the ones from my project, is there a way around it?