Source for CustomCatalogPartChrome referenced from CustomCatalogZone

 /// <summary>
/// Summary description for CustomCatalogPartChrome
/// </summary>
public class CustomCatalogPartChrome : CatalogPartChrome
{
private CatalogZone _zone;
private Page _page;

public CustomCatalogPartChrome (CatalogZone zone):base(zone)
{

this._zone = zone;
this._page = zone.Page;
}

public override void RenderCatalogPart ( HtmlTextWriter writer, CatalogPart catalogPart )
{
if ( catalogPart == null )
{
throw new ArgumentNullException ( "catalogPart" );
}
PartChromeType chromeType = this.Zone.GetEffectiveChromeType ( catalogPart );
Style style = base.CreateCatalogPartChromeStyle ( catalogPart, chromeType );
if ( !style.IsEmpty )
{
style.AddAttributesToRender ( writer, this.Zone );
}
writer.AddAttribute ( HtmlTextWriterAttribute.Cellspacing, "0" );
writer.AddAttribute ( HtmlTextWriterAttribute.Cellpadding, "0" );
writer.AddAttribute ( HtmlTextWriterAttribute.Border, "0" );
writer.AddStyleAttribute ( HtmlTextWriterStyle.Width, "100%" );
writer.RenderBeginTag ( HtmlTextWriterTag.Table );
switch ( chromeType )
{
case PartChromeType.TitleOnly:
case PartChromeType.TitleAndBorder:
{
writer.RenderBeginTag ( HtmlTextWriterTag.Tr );
Style partTitleStyle = this.Zone.PartTitleStyle;
if ( !partTitleStyle.IsEmpty )
{
partTitleStyle.AddAttributesToRender ( writer, this.Zone );
}
writer.RenderBeginTag ( HtmlTextWriterTag.Td );
this.RenderTitle ( writer, catalogPart );
writer.RenderEndTag ();
writer.RenderEndTag ();
break;
}
}
if ( catalogPart.ChromeState != PartChromeState.Minimized )
{
writer.RenderBeginTag ( HtmlTextWriterTag.Tr );
Style partStyle = this.Zone.PartStyle;
if ( !partStyle.IsEmpty )
{
partStyle.AddAttributesToRender ( writer, this.Zone );
}
writer.RenderBeginTag ( HtmlTextWriterTag.Td );
this.RenderPartContents ( writer, catalogPart );
typeof ( CatalogPartChrome ).GetMethod ( "RenderItems", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance ).Invoke ( this, new object[] { writer, catalogPart } );
writer.RenderEndTag ();
writer.RenderEndTag ();
}
writer.RenderEndTag ();
}


public void RenderTitle ( HtmlTextWriter writer, CatalogPart catalogPart )
{
Label label = new Label ();
label.Text = catalogPart.DisplayTitle;
label.ToolTip = catalogPart.Description;
label.Page = this._page;
label.RenderControl ( writer );
}
}

posted on Tuesday, August 21, 2007 2:08 PM | Filed Under [ WebParts ASP.NET 2.0 ]
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Comments

No comments posted yet.
Post Comment
Title *
Name *
Email
Url
Comment *