ASP.AJAX TabContainer / TabPanel自定义

时间:2008-10-27 10:35:09

标签: asp.net tabcontainer

是否可以使用AjaxToolkit将选项卡的位置设置在tabcontainer的底部?你确实对CSS有了一些控制权,但我对CSS的认真是不是很可行?

由于

2 个答案:

答案 0 :(得分:3)

您无法使用此控件的现成版本,但您可以轻松修改源代码以创建自己的版本。 Checkout AjaxControlToolkit \ Tabs \ TabContainer.cs(下面)。您需要反转顺序,以便RenderHeader()部分位于RenderChildren()部分下方。或者,您可以向控件添加一个名为“RenderHeaderFirst”的属性或类似的属性来实现相同的功能:

    protected override void RenderContents(HtmlTextWriter writer)
    {
        Page.VerifyRenderingInServerForm(this);

        // rendering the tabs (header)
        writer.AddAttribute(HtmlTextWriterAttribute.Id, ClientID + "_header");
        writer.RenderBeginTag(HtmlTextWriterTag.Div);
        {
            RenderHeader(writer);
        }
        writer.RenderEndTag();

        // rendering the contents of the tabs (children)
        if (!Height.IsEmpty)
            writer.AddStyleAttribute(HtmlTextWriterStyle.Height, Height.ToString());

        writer.AddAttribute(HtmlTextWriterAttribute.Id, ClientID + "_body");
        writer.RenderBeginTag(HtmlTextWriterTag.Div);
        {
            RenderChildren(writer);
        }
        writer.RenderEndTag();
    }

P.S。我自己没试过,但看起来是正确的方向。

答案 1 :(得分:3)

或者您可以使用TabContainer的 TabStripPlacement 属性...

TabContainer属性

  • ActiveTabChanged(事件) - 在回发后更改标签时在服务器端触发
  • OnClientActiveTabChanged - 要附加到客户端tabChanged事件的javascript函数的名称
  • CssClass - 用于为选项卡定义自定义外观的css类覆盖。有关详细信息,请参阅选项卡主题部分。
  • ActiveTabIndex - 显示的第一个标签
  • 高度 - 设置标签正文的高度(不包括TabPanel标题)
  • 宽度 - 设置标签正文的宽度
  • ScrollBars - 是否在TabContainer正文中显示滚动条(无,水平,垂直,两者,自动)
  • TabStripPlacement - 是否在容器顶部或下方(顶部,底部)渲染标签
相关问题