2011-10-21 91 views

回答

0

我们还没有这样做。但是我们做了类似的东西来覆盖其他SP控件的行为。

首先您需要了解ASP .NET Control Adapter的概念。

主要想法是可以覆盖任何控件的行为。因此,在这种情况下,您可以重写Web Part Zone Render方法并将逻辑放在那里。

唯一的问题是,您需要为特定的浏览器注册您的控制适配器并为此使用.browser文件。解决方法是创建您自己的HttpModule并处理BeginRequestEvent。您可以在所有浏览器上注册您的适配器,例如

var browser = m_Application.Context.Request.Browser; 
if (browser == null)return; 
if (!browser.Adapters.Contains(webPartZoneTypeName)){ 
    browser.Adapter[webPartZoneTypeName] = strongNameOfYourAdapter; 
} 

希望这会有所帮助。