ASP.NET
  Home arrow ASP.NET arrow Page 5 - ASP.NET Custom Server Controls: Round Corn...
ASP Free Forums 
.NET  
ASP  
ASP Code  
ASP.NET  
ASP.NET Code  
BrainDump  
C#  
Code Examples  
Database  
Database Code  
IIS  
Microsoft Access  
MS SQL Server  
Visual Basic.NET  
Windows Scripting  
Windows Security  
XML  
ASP Web Hosting  
ASP.NET Web Hosting 
Mobile Linux 
App Generation ROI 
Windows Web Hosting
 
IBM® developerWorks 
Sun Developer Network 
Weekly Newsletter
 
Developer Updates  
Free Website Content 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Write For Us Get Paid 
Request Media Kit
Contact Us 
Site Map 
Privacy Policy 
Support 
 USERNAME
 
 PASSWORD
 
 
  >>> SIGN UP!  
  Lost Password? 
ASP.NET

ASP.NET Custom Server Controls: Round Cornered box control in ASP.NET
By: Jagadish Chaterjee
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 5 stars5 stars5 stars5 stars5 stars / 5
    2005-09-26

    Table of Contents:
  • ASP.NET Custom Server Controls: Round Cornered box control in ASP.NET
  • Exposing properties for every side (including corners) of the box
  • Creating the header
  • Creating the body (content)
  • Closing the body (content) and creating the footer

  • Rate this Article: Poor Best 
      ADD THIS ARTICLE TO:
      Del.ici.ous Digg
      Blink Simpy
      Google Spurl
      Y! MyWeb Furl
    Email Me Similar Content When Posted
    Add Developer Shed Article Feed To Your Site
    Email Article To Friend
    Print Version Of Article
    PDF Version Of Article
     
     
    ADVERTISEMENT


    ASP.NET Custom Server Controls: Round Cornered box control in ASP.NET - Closing the body (content) and creating the footer


    (Page 5 of 5 )

    In the previous section, we already opened the center cell.  But we haven't closed it yet. In this section we are going to close it.

    writer.RenderEndTag() 'td
           
    'middle right
            writer.AddAttribute(HtmlTextWriterAttribute.Width, "0px")
            writer.AddAttribute(HtmlTextWriterAttribute.Height,
    "0px")
           If Me.ImageMiddleRightURL.Trim.Length > 0
    Then
                writer.AddStyleAttribute
    (HtmlTextWriterStyle.BackgroundImage, "url("
    &Me.ImageMiddleRightURL.Trim & ")")
                writer.AddStyleAttribute("background-repeat",
    "repeat-y")
           
    End If
            writer.RenderBeginTag(HtmlTextWriterTag.Td)
            writer.RenderEndTag()
    'td
            writer.RenderEndTag() 'tr

    The above is quite straightforward for closing the previously opened “<TD>” tag.  But the above code is not part of the “RenderBeginTag” method.  Instead, it is from the “RenderEndTag” method.  We further proceed to create the footer row by adding the same type of code (with very few modifications) available in the “Creating the Header” section to the above code fragment.  As the coding is quite similar, you can get it from the downloadable.

    Everything until now is fine.  How did I implement the trick to get the “developer specified content” into my control?  This is from the following code fragment.

    Protected Overrides Sub RenderContents(ByVal writer As
    System.Web.UI.HtmlTextWriter)
            writer.Write(Text)
       End Sub

    Even though it is only three lines, it should be considered the heart of the control.  In other words, when the control is getting rendered, it first executes the "RenderBeginTag” method followed by the “RenderContents” method and finally the “RenderEndTag.”  For a detailed explanation of “rendereing” issues, I suggest you to refer my previous articles of the same series.

    Even though I started emitting exclusive HTML using “writer” methods, you can also do the same by extending your control from an already existing “table” web control.  If you directly extend it from the “table” web control, you can work with an almost .NET based ASP.NET framework model to add table rows and cells, which looks convenient and even readable.  But in that case, we need to understand a bit about the “rendering” issues of child controls within the parent control.

    I leave it to the developers for further enhancing this control.  The areas of improving the it  would include eventing, better JavaScript for validation, data-binding, and so on. Good luck.

    Any comments, suggestions, bugs, errors, feedback etc. are highly appreciated at jag_chat@yahoo.com.


    DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware.

       · Hi everyone...just have a look at the new ASP.NET control I presented...any...
     

    ASP.NET ARTICLES

    - Advantages of the ASP.NET MVC Approach
    - ASP.NET Web Forms Weaknesses
    - ASP.NET Web Forms Meets ASP.NET MVC
    - Source Code for Saving and Retrieving Data w...
    - Using GridView to Save and Retrieve Data wit...
    - Handling Dynamic Images in ASP.NET 3.5 AJAX ...
    - Retrieving Data with AJAX and the GridView C...
    - Playing with Images in ASP.NET 3.5 AJAX Appl...
    - Saving and Retrieving Data with AJAX
    - Enhancing PHP Via the ASP.NET AJAX Framework...
    - Enhancing PHP Programming with the ASP.NET A...
    - Classes and ASP.NET AJAX
    - Using ASP.NET AJAX
    - Building a Simple Storefront with LINQ
    - Developing a Dice Game Using ASP.NET Futures...





    © 2003-2008 by Developer Shed. All rights reserved. DS Cluster 4 hosted by Hostway
    Stay green...Green IT