如何在模板化 FormView 中使用 TabContainer 控件?
是否可以在模板化 FormView 中使用 TabContainer,如下所示:
<ItemTemplate>
<cc1:TabContainer ID="TabContainer1" runat="server">
<cc1:TabPanel ID="Tab1" runat="server">
<HeaderTemplate>Tab One</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="Tab2" runat="server">
<HeaderTemplate>Tab 2</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</ItemTemplate>
<EditTemplate>
<cc1:TabContainer ID="TabContainer1" runat="server">
<cc1:TabPanel ID="Tab1" runat="server">
<HeaderTemplate>Tab One</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="Tab2" runat="server">
<HeaderTemplate>Tab 2</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</EditTemplate>
一次只有一个模板视图一切正常; 例如,如果 ItemTemplate 有效,则 EditTemplate 则无效。 ASP.NET 会抱怨重复的绑定字段 ID。
有人尝试过做我想做的事吗?
谢谢。- Gene
编辑:
我不认为具有相同 ID 的选项卡容器是这里的问题,因为它们都位于单独的 Template 元素内,并且一次仅呈现一个模板。
更新:
< em>我没有找到解决办法,而且我认为这是不可能的。 因此,继续使用唯一 ID。 由于懒惰,我编写了一些代码来自动执行可怕的命名过程。 我希望有人有更好的答案可以分享。 不管怎样,我太穷了,付不起赏金。;-)
Is it possible to use a TabContainer inside a templated FormView like so:
<ItemTemplate>
<cc1:TabContainer ID="TabContainer1" runat="server">
<cc1:TabPanel ID="Tab1" runat="server">
<HeaderTemplate>Tab One</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="Tab2" runat="server">
<HeaderTemplate>Tab 2</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</ItemTemplate>
<EditTemplate>
<cc1:TabContainer ID="TabContainer1" runat="server">
<cc1:TabPanel ID="Tab1" runat="server">
<HeaderTemplate>Tab One</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="Tab2" runat="server">
<HeaderTemplate>Tab 2</HeaderTemplate>
<ContentTemplate>
... bound fields
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</EditTemplate>
Everything works fine for only one template view at a time; for example if ItemTemplate works then EditTemplate won't. ASP.NET will complain about duplicate bound field IDs.
Has anybody tried doing what I'm trying to do?
Thanks.- Gene
EDIT :
I don't think the tab containers with the same IDs is the issue here since they are both inside separate Template elements and only one Template gets rendered at a time.
UPDATE:
I didn't manage to find a solution, and I think it's not possible. So, just moved on and use unique IDs. Being lazy, I wrote some code to automate the dreaded naming process. I hope someone out there has a better answer to share. Anyway, I'm too poor to afford to put a bounty on it. ;-)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
没有太多使用 Tab 容器,但您需要为页面上的每个元素定义唯一的 ID。
Haven't used the Tab container much but you need to define unique ID's for each element on the page.
我通过更改每个选项卡中重复的字段名称来解决这个问题。
I solved this the hard way, by, changing the duplicate field names in each of the tabs.