母版页:
可以把界面的部分代码进行重用
添加新项-母版页
在母版页中界面代码不要写在
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
和
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>中
添加的Web窗体时要从添加新项中进行添加,在选择母版页前打上勾,选择好母版页才能套用母版页
在套用母版页的Web窗体中在相应的ContentPlaceHolder中填写界面代码来替换母版页中留下的坑
母版页嵌套
继续添加新项-母版页 , 在选择母版页前打上勾,选择好母版页才能套用母版页
在<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>中写界面代码作为母版。
写完以后要给用户留下一个自己布置的坑,拖进一个ContentPlaceHolder 控件来注意改一下id,否则会重名。
母版页与子页之间数据的传递:
直接在子页调母版页中的控件调用不到,解决办法
在母版页后台代码写一个方法,这个方法需要的参数就可以作为数据传递,通过从子页调母版页中的方法进行数据的传递。
MP2 m2 =this.Master as MP2; //将母版页实例化出来。 MP2母版页也是一个类 m2=当前页面的母版页 转化为 MP2;
然后调用m2中的方法,将参数传递过去。
如果从子页面传递到一级母版页,需要通过二级母版也来进行传递。
二级母版页中的方法
一级母版页中的方法
母版页公共的外部样式表路径和外部JS文件的路径匹配:
把外部样式表引到母版页中,会自动匹配相应的路径,不用管他。
如果把外部 js文件引进来就不会自动匹配了,将js文件拖入,把src=“路径” 换位一个方法<%=abc()%>往外输出一个C#变量。注意把<script></script>尽量写在form表单里面。
后台方法
把原来的路径用ResolveClientUrl()这个方法获取自动匹配的正确路径