strip span tag from text-only templates

Discussion in 'ASP .Net Building Controls' started by Samuel, Jan 17, 2007.

  1. Samuel

    Samuel Guest

    Hi,

    I am building a control that renders as a table, and I created two templates
    for my users to "wrap" the table with whatever HTML tags they want. Like this

    <topWrapperTemplate></topWrapperTemplate>
    <table>.....</table>
    <bottomWrapperTemplate></bottomWrapperTemplate>

    whatever goes into the two wrapper templates should be rendered literally
    without <span> tags. So if a user put <div class="hot"> in
    topWrapperTemplate, and </div> in bottomWrapperTemplate, the result should
    look like

    <div class="hot">
    <table>...</table>
    </div>

    not this:

    <span><div class="hot"></span>
    <table>...</table>
    <span></div></span>

    What should I do? I know how not to render the <span> tag around the whole
    control by overriding the render sub, but I have no idea how to do the same
    with the templates within my own control.
    Samuel, Jan 17, 2007
    #1
    1. Advertising

  2. Hi,

    Is your template container inheriting from WebControl?

    Try to inherit from Control and the span tag will not be generated:

    namespace myns
    {
    public class Class1TemplateContainer : WebControl, INamingContainer
    {
    private Class1 _parent;

    public Class1TemplateContainer(Class1 parent)
    {
    _parent = parent;
    }

    public Class1 Class1
    {
    get { return _parent; }
    }


    protected override HtmlTextWriterTag TagKey
    {
    get
    {
    return base.TagKey;
    }
    }
    }


    [ParseChildren(ChildrenAsProperties = true), PersistChildren(false)]
    public class Class1 : Control, INamingContainer
    {
    private ITemplate _headerTemplate;

    [DefaultValue(null),
    TemplateContainer(typeof(Class1TemplateContainer)),
    PersistenceMode(PersistenceMode.InnerProperty)]
    public virtual ITemplate HeaderTemplate
    {
    get { return this._headerTemplate; }
    set { this._headerTemplate = value; }
    }

    private ITemplate _footerTemplate;

    [DefaultValue(null),
    TemplateContainer(typeof(Class1TemplateContainer)),
    PersistenceMode(PersistenceMode.InnerProperty)]
    public virtual ITemplate FooterTemplate
    {
    get { return _footerTemplate; }
    set { _footerTemplate = value; }
    }

    private Class1TemplateContainer _headerTemplateContainer;
    private Class1TemplateContainer _footerTemplateContainer;

    protected override void CreateChildControls()
    {
    if (HeaderTemplate != null)
    {
    _headerTemplateContainer = new
    Class1TemplateContainer(this);
    HeaderTemplate.InstantiateIn(_headerTemplateContainer);
    Controls.Add(_headerTemplateContainer);
    }

    if (FooterTemplate != null)
    {
    _footerTemplateContainer = new
    Class1TemplateContainer(this);
    FooterTemplate.InstantiateIn(_footerTemplateContainer);
    Controls.Add(_footerTemplateContainer);
    }
    }
    }
    }





    Sincerely,
    Walter Wang (, remove 'online.')
    Microsoft Online Community Support

    ==================================================
    Get notification to my posts through email? Please refer to
    http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
    ications. If you are using Outlook Express, please make sure you clear the
    check box "Tools/Options/Read: Get 300 headers at a time" to see your reply
    promptly.

    Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
    where an initial response from the community or a Microsoft Support
    Engineer within 1 business day is acceptable. Please note that each follow
    up response may take approximately 2 business days as the support
    professional working with you may need further investigation to reach the
    most efficient resolution. The offering is not appropriate for situations
    that require urgent, real-time or phone-based interactions or complex
    project analysis and dump analysis issues. Issues of this nature are best
    handled working with a dedicated Microsoft Support Engineer by contacting
    Microsoft Customer Support Services (CSS) at
    http://msdn.microsoft.com/subscriptions/support/default.aspx.
    ==================================================

    This posting is provided "AS IS" with no warranties, and confers no rights.
    Walter Wang [MSFT], Jan 17, 2007
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. shruds
    Replies:
    1
    Views:
    783
    John C. Bollinger
    Jan 27, 2006
  2. Dan Bishop

    DataGrid (body only) contained in <span>...</span> tags

    Dan Bishop, Jun 7, 2004, in forum: ASP .Net Datagrid Control
    Replies:
    2
    Views:
    277
    Kilic Beg
    Jun 7, 2004
  3. Aquila
    Replies:
    35
    Views:
    451
    Mathieu Bouchard
    Mar 31, 2005
  4. Wang, Jay
    Replies:
    5
    Views:
    471
    Wang, Jay
    May 25, 2004
  5. yelipolok
    Replies:
    4
    Views:
    253
    John W. Krahn
    Jan 27, 2010
Loading...

Share This Page