// EP 30/06/08: Cannot call AddJavaScriptReference() here, because this control gets initialised after OnPreRender // has already run on the parent page. protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); bool isHeader = Page.Header != null; if (_hoverSyle != null) { if (!isHeader) { throw new InvalidOperationException("Using BorderedPanel.HoverStyle requires Page.Header to be non-null (e.g. <head runat=\"server\" />)."); } BorderedPanelStyle s = new BorderedPanelStyle(); s.CopyFrom(_hoverSyle); if (ControlStyleCreated) { s.MergeWith(ControlStyle); } Page.Header.StyleSheet.RegisterStyle(s, this); _hoverCssClass = s.RegisteredCssClass; RegisterBorderImagesArray(s, OuterBorderHoverImagesArrayName); } if (_pressedSyle != null) { if (!isHeader) { throw new InvalidOperationException("Using BorderedPanel.PressedSyle requires Page.Header to be non-null (e.g. <head runat=\"server\" />)."); } BorderedPanelStyle s = new BorderedPanelStyle(); s.CopyFrom(_pressedSyle); if (_hoverSyle != null) { s.MergeWith(_hoverSyle); } if (ControlStyleCreated) { s.MergeWith(ControlStyle); } Page.Header.StyleSheet.RegisterStyle(s, this); _pressedCssClass = s.RegisteredCssClass; RegisterBorderImagesArray(s, OuterBorderPressedImagesArrayName); } if (ControlStyleCreated) { if (isHeader) { Page.Header.StyleSheet.RegisterStyle(ControlStyle, this); } } }
void RegisterBorderImagesArray(BorderedPanelStyle style, String arrayName) { Page.ClientScript.RegisterArrayDeclaration(arrayName, "'" + String.Join("','", new string[] { ResolveUrl(style.OuterBorderTopImageUrl), ResolveUrl(style.OuterBorderLeftImageUrl), ResolveUrl(style.OuterBorderRightImageUrl), ResolveUrl(style.OuterBorderBottomImageUrl), ResolveUrl(style.OuterBorderLeftTopCornerImageUrl), ResolveUrl(style.OuterBorderLeftBottomCornerImageUrl), ResolveUrl(style.OuterBorderRightTopCornerImageUrl), ResolveUrl(style.OuterBorderRightBottomCornerImageUrl) }) + "'"); }
public override void MergeWith(Style s) { base.MergeWith(s); BorderedPanelStyle ps = s as BorderedPanelStyle; if (ps == null) { return; } if (!CheckStyle(StyleKey.OuterBorderBackColor) && ps.CheckStyle(StyleKey.OuterBorderBackColor)) { OuterBorderBackColor = ps.OuterBorderBackColor; } if (!CheckStyle(StyleKey.PaddingBottom) && ps.CheckStyle(StyleKey.PaddingBottom)) { PaddingBottom = ps.PaddingBottom; } if (!CheckStyle(StyleKey.PaddingLeft) && ps.CheckStyle(StyleKey.PaddingLeft)) { PaddingLeft = ps.PaddingLeft; } if (!CheckStyle(StyleKey.PaddingRight) && ps.CheckStyle(StyleKey.PaddingRight)) { PaddingRight = ps.PaddingRight; } if (!CheckStyle(StyleKey.PaddingTop) && ps.CheckStyle(StyleKey.PaddingTop)) { PaddingTop = ps.PaddingTop; } if (!CheckStyle(StyleKey.MarginBottom) && ps.CheckStyle(StyleKey.MarginBottom)) { MarginBottom = ps.MarginBottom; } if (!CheckStyle(StyleKey.MarginLeft) && ps.CheckStyle(StyleKey.MarginLeft)) { MarginLeft = ps.MarginLeft; } if (!CheckStyle(StyleKey.MarginRight) && ps.CheckStyle(StyleKey.MarginRight)) { MarginRight = ps.MarginRight; } if (!CheckStyle(StyleKey.MarginTop) && ps.CheckStyle(StyleKey.MarginTop)) { MarginTop = ps.MarginTop; } if (!CheckStyle(StyleKey.OuterBorderBottomImageUrl) && ps.CheckStyle(StyleKey.OuterBorderBottomImageUrl)) { OuterBorderBottomImageUrl = ps.OuterBorderBottomImageUrl; } if (!CheckStyle(StyleKey.OuterBorderBottomWidth) && ps.CheckStyle(StyleKey.OuterBorderBottomWidth)) { OuterBorderBottomWidth = ps.OuterBorderBottomWidth; } if (!CheckStyle(StyleKey.OuterBorderLeftBottomCornerImageUrl) && ps.CheckStyle(StyleKey.OuterBorderLeftBottomCornerImageUrl)) { OuterBorderLeftBottomCornerImageUrl = ps.OuterBorderLeftBottomCornerImageUrl; } if (!CheckStyle(StyleKey.OuterBorderLeftImageUrl) && ps.CheckStyle(StyleKey.OuterBorderLeftImageUrl)) { OuterBorderLeftImageUrl = ps.OuterBorderLeftImageUrl; } if (!CheckStyle(StyleKey.OuterBorderLeftTopCornerImageUrl) && ps.CheckStyle(StyleKey.OuterBorderLeftTopCornerImageUrl)) { OuterBorderLeftTopCornerImageUrl = ps.OuterBorderLeftTopCornerImageUrl; } if (!CheckStyle(StyleKey.OuterBorderLeftWidth) && ps.CheckStyle(StyleKey.OuterBorderLeftWidth)) { OuterBorderLeftWidth = ps.OuterBorderLeftWidth; } if (!CheckStyle(StyleKey.OuterBorderRightBottomCornerImageUrl) && ps.CheckStyle(StyleKey.OuterBorderRightBottomCornerImageUrl)) { OuterBorderRightBottomCornerImageUrl = ps.OuterBorderRightBottomCornerImageUrl; } if (!CheckStyle(StyleKey.OuterBorderRightImageUrl) && ps.CheckStyle(StyleKey.OuterBorderRightImageUrl)) { OuterBorderRightImageUrl = ps.OuterBorderRightImageUrl; } if (!CheckStyle(StyleKey.OuterBorderRightTopCornerImageUrl) && ps.CheckStyle(StyleKey.OuterBorderRightTopCornerImageUrl)) { OuterBorderRightTopCornerImageUrl = ps.OuterBorderRightTopCornerImageUrl; } if (!CheckStyle(StyleKey.OuterBorderRightWidth) && ps.CheckStyle(StyleKey.OuterBorderRightWidth)) { OuterBorderRightWidth = ps.OuterBorderRightWidth; } if (!CheckStyle(StyleKey.OuterBorderStyle) && ps.CheckStyle(StyleKey.OuterBorderStyle)) { OuterBorderStyle = ps.OuterBorderStyle; } if (!CheckStyle(StyleKey.OuterBorderTopImageUrl) && ps.CheckStyle(StyleKey.OuterBorderTopImageUrl)) { OuterBorderTopImageUrl = ps.OuterBorderTopImageUrl; } if (!CheckStyle(StyleKey.OuterBorderTopWidth) && ps.CheckStyle(StyleKey.OuterBorderTopWidth)) { OuterBorderTopWidth = ps.OuterBorderTopWidth; } }