本文介绍了ASP.net获取内容页面,修改母版页控制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

主页:

<form runat="server">
<Scirra:MainMenu runat="server" ID="MainMenu" TopTabSelected="home" SubTabSelected="link2" />
<asp:ContentPlaceHolder id="MainContent" runat="server">
snip

内容页:

Master.MainMenu.TopTabSelected = "forum";

我知道我可能这样做不对,但是这可能吗?我想改变这种控制的参数。它说'无法进入,由于保护级别

推荐答案

您应提供您的母版是获取公共财产铁 MenuTabSelected /设置您的菜单这个属性。

You should provide a public property f.e MenuTabSelected in your MasterPage that Gets/Sets this property of your Menu.

public string MenuTabSelected {
    get { return MainMenu.TopTabSelected; }
    set { MainMenu.TopTabSelected = value; }
}

然后就可以以这种方式访问​​它:

Then you can access it in this way:

((YourMasterPage)Master).MenuTabSelected = "forum";

其中, YourMasterPage 是母版的类型。

编译器引发错误,因为你要访问您的母版级外的私人或受保护的控制。这只会被允许,如果它是公共的,不建议什么。你有更多的控制权,如果你这样做,我建议的方式:)

The compiler error is thrown because you want to access a private or protected control from outside of your MasterPage-Class. This would only be allowed if it would be public, what is not recommended. You have more control if you do it the way i suggested :)

这篇关于ASP.net获取内容页面,修改母版页控制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-21 13:26