10

I would like to add a rendering that also has some other rendering added to its own place holder ahead of time. An example is to add a striped rendering and place a 1 column grid rendering in the striped rendering's placeholder. And you can see how I could add an image, some html, etc... And have this all added to a placeholder in one clean action.

I know that Brainjocks Score has the concept of a Snippet and not sure of what SXA calls theirs. But those are for MVC. I am looking for a little guidance on the code that would let us accomplish the same thing in webforms. Its a precompiled set of renderings that I can drop in a placeholder.

6
  • Just to make sure I understand you correctly; you're looking for sort of a composite rendering component? Oct 30, 2017 at 21:56
  • @MarkCassidy that’s exactly right. That jogs my memory that I wrote something like that in the past. I remember having it manipulate the placeholders names when it got placed. There are 10 of these available for mvc since you can use the mvc rendering pipelines. Webforms is more limited.
    – Chris Auer
    Oct 30, 2017 at 22:09
  • Closest I've seen to this is this: chrisvandesteeg.nl/2015/11/03/sitecore-composite-components
    – jammykam
    Oct 31, 2017 at 0:52
  • With Brainjocks SCORE, you can do this with Snippets executed as Macro Renderings. I believe SXA has a similar concept. Have not seen an open source version of this feature before.
    – jdylanmc
    Oct 17, 2018 at 20:23
  • @DylanMcCurry I think this is true, but I think it is MVC only.
    – Chris Auer
    Oct 18, 2018 at 3:27

1 Answer 1

0

If you're in the context of a rendering control you can access its associated placeholder control through the Parent() method (you may have to use it more than once to get the placeholder). From there, you can add whatever controls you like as its children.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.