Sharepoint 2010 WebPartZone

发布于 2024-12-11 10:10:26 字数 76 浏览 0 评论 0 原文

是否可以控制 sharepoint 中 webpartzone 的输出。 我们不想有桌子。

你正在做什么来处理这个问题?

Is it possible to control the output of a webpartzone in sharepoint.
We would like not to have tables.

What are you doing to handle this ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

少钕鈤記 2024-12-18 10:10:26

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

首先,您需要学习 ASP .NET 控制适配器

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

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

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

希望这会有所帮助。

We haven't done that. But we did similar stuff to override behavior of other SP controls.

First of all you need to learn the conception of ASP .NET Control Adapter.

The main idea is that it's possible to override behavior of any control. So, in this case you can override Web Part Zone Render method and put your logic there.

The only issue is that you need to register your control adapter for specific browser and use .browser files for that. To workaround that create your own HttpModule and handle BeginRequestEvent. There you can register your adapter for all browsers, e.g.

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

Hope this will help.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文