Presently sponsored by ScriptRunner
Get your free PowerShell Security e-Book!
As many of you might have experienced when you create your own custom list definition, you can also create your custom forms (
DispForm.aspx for example).
In my case, I want the DispForm.aspx to use another master page than it originally does, and so I thought I’d just change the following line of my
<%@ Page language="C#" MasterPageFile="~masterurl/default.master" ... %\>
<%@ Page language="C#" MasterPageFile="/_layouts/zTest/test.master" ... %\>
Doing this will most likely cause you to receive the following known error message:
An error occurred during the processing of . The referenced file ‘/_layouts/zTest/test.master’ is not allowed on this page.
Instead of changing the MasterPageFile attribute of the Page directive, inject some server-side script in the DispForm.aspx in order to change the MasterPageFile property though code.
DispForm.aspx, do the following:
Keep the MasterPageFile=”~masterurl/default.master” attribute
Insert the following server-side script directly undet the <%@ Page … %> directive:
Watch your DispForm.aspx use a new Master Page without getting the error message.
I’d like to shout out to MVP Eric Schupps for giving me this smart tip.
Join the newsletter to receive the latest updates in your inbox.