Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / Panel.cs / 1305376 / Panel.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Drawing.Design; using System.Web; using System.Web.UI; using System.Web.Util; ////// [ Designer("System.Web.UI.Design.WebControls.PanelContainerDesigner, " + AssemblyRef.SystemDesign), ParseChildren(false), PersistChildren(true), ] public class Panel : WebControl { private string _defaultButton; private bool _renderedFieldSet = false; ///Constructs a panel for specifies layout regions /// on a page and defines its properties. ////// Initializes a new instance of the public Panel() : base(HtmlTextWriterTag.Div) { } ///class. /// /// [ WebCategory("Appearance"), DefaultValue(""), Editor("System.Web.UI.Design.ImageUrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor)), UrlProperty(), WebSysDescription(SR.Panel_BackImageUrl) ] public virtual string BackImageUrl { get { if (ControlStyleCreated == false) { return String.Empty; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.BackImageUrl; } string s = (string)ViewState["BackImageUrl"]; return((s == null) ? String.Empty : s); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.BackImageUrl = value; } else { ViewState["BackImageUrl"] = value; } } } ///Gets or sets the URL of the background image for the panel control. ////// Gets or sets default button for the panel /// [ DefaultValue(""), Themeable(false), WebCategory("Behavior"), WebSysDescription(SR.Panel_DefaultButton) ] public virtual string DefaultButton { get { if (_defaultButton == null) { return String.Empty; } return _defaultButton; } set { _defaultButton = value; } } ////// [ DefaultValue(ContentDirection.NotSet), WebCategory("Layout"), WebSysDescription(SR.Panel_Direction) ] public virtual ContentDirection Direction { get { if (ControlStyleCreated == false) { return ContentDirection.NotSet; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.Direction; } object direction = ViewState["Direction"]; return direction == null ? ContentDirection.NotSet : (ContentDirection) direction; } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.Direction = value; } else { ViewState["Direction"] = value; } } } [ Localizable(true), DefaultValue(""), WebCategory("Appearance"), WebSysDescription(SR.Panel_GroupingText) ] public virtual string GroupingText { get { string s = (string)ViewState["GroupingText"]; return (s != null) ? s : String.Empty; } set { ViewState["GroupingText"] = value; } } ///Gets or sets the direction of text in the panel ////// [ WebCategory("Layout"), DefaultValue(HorizontalAlign.NotSet), WebSysDescription(SR.Panel_HorizontalAlign) ] public virtual HorizontalAlign HorizontalAlign { get { if (ControlStyleCreated == false) { return HorizontalAlign.NotSet; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.HorizontalAlign; } object o = ViewState["HorizontalAlign"]; return ((o == null) ? HorizontalAlign.NotSet : (HorizontalAlign)o); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.HorizontalAlign = value; } else { if (value < HorizontalAlign.NotSet || value > HorizontalAlign.Justify) { throw new ArgumentOutOfRangeException("value"); } ViewState["HorizontalAlign"] = value; } } } public override bool SupportsDisabledAttribute { get { return RenderingCompatibility < VersionUtil.Framework40; } } ///Gets or sets the horizontal alignment of the contents within the panel. ////// [ DefaultValue(ScrollBars.None), WebCategory("Layout"), WebSysDescription(SR.Panel_ScrollBars) ] public virtual ScrollBars ScrollBars { get { if (ControlStyleCreated == false) { return ScrollBars.None; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.ScrollBars; } object scroll = ViewState["ScrollBars"]; return ((scroll == null) ? ScrollBars.None : (ScrollBars)scroll); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.ScrollBars = value; } else { ViewState["ScrollBars"] = value; } } } ///Gets or sets the scrollbar behavior of the panel. ////// [ WebCategory("Layout"), DefaultValue(true), WebSysDescription(SR.Panel_Wrap) ] public virtual bool Wrap { get { if (ControlStyleCreated == false) { return true; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.Wrap; } object b = ViewState["Wrap"]; return ((b == null) ? true : (bool)b); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.Wrap = value; } else { ViewState["Wrap"] = value; } } } ///Gets or sets a value /// indicating whether the content wraps within the panel. ////// /// Add background-image to list of style attributes to render. /// Add align and nowrap to list of attributes to render. /// protected override void AddAttributesToRender(HtmlTextWriter writer) { base.AddAttributesToRender(writer); string s = BackImageUrl; // Whidbey 12856 if (s.Trim().Length > 0) { writer.AddStyleAttribute(HtmlTextWriterStyle.BackgroundImage, "url(" + ResolveClientUrl(s) + ")"); } AddScrollingAttribute(ScrollBars, writer); HorizontalAlign hAlign = HorizontalAlign; if (hAlign != HorizontalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(HorizontalAlign)); writer.AddStyleAttribute(HtmlTextWriterStyle.TextAlign, hac.ConvertToInvariantString(hAlign).ToLowerInvariant()); } if (!Wrap) { if (EnableLegacyRendering) { writer.AddAttribute(HtmlTextWriterAttribute.Nowrap, "nowrap", false); } else { writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); } } if (Direction == ContentDirection.LeftToRight) { writer.AddAttribute(HtmlTextWriterAttribute.Dir, "ltr"); } else if (Direction == ContentDirection.RightToLeft) { writer.AddAttribute(HtmlTextWriterAttribute.Dir, "rtl"); } if (!DesignMode && (Page != null) && (Page.RequestInternal != null) && (Page.Request.Browser.EcmaScriptVersion.Major > 0) && (Page.Request.Browser.W3CDomVersion.Major > 0)) { if (DefaultButton.Length > 0) { Control c = FindControl(DefaultButton); if (c is IButtonControl) { Page.ClientScript.RegisterDefaultButtonScript(c, writer, true /* UseAddAttribute */); } else { throw new InvalidOperationException(SR.GetString(SR.HtmlForm_OnlyIButtonControlCanBeDefaultButton, ID)); } } } } ////// [To be supplied.] /// private void AddScrollingAttribute(ScrollBars scrollBars, HtmlTextWriter writer) { switch (scrollBars) { case ScrollBars.Horizontal: writer.AddStyleAttribute(HtmlTextWriterStyle.OverflowX, "scroll"); break; case ScrollBars.Vertical: writer.AddStyleAttribute(HtmlTextWriterStyle.OverflowY, "scroll"); break; case ScrollBars.Both: writer.AddStyleAttribute(HtmlTextWriterStyle.Overflow, "scroll"); break; case ScrollBars.Auto: writer.AddStyleAttribute(HtmlTextWriterStyle.Overflow, "auto"); break; default: break; } } ////// /// protected override Style CreateControlStyle() { return new PanelStyle(ViewState); } ///A protected method. Creates a panel control style. ///public override void RenderBeginTag(HtmlTextWriter writer) { AddAttributesToRender(writer); HtmlTextWriterTag tagKey = TagKey; if (tagKey != HtmlTextWriterTag.Unknown) { writer.RenderBeginTag(tagKey); } else { writer.RenderBeginTag(TagName); } string s = GroupingText; bool useGrouping = (s.Length != 0) && !(writer is Html32TextWriter); if (useGrouping) { writer.RenderBeginTag(HtmlTextWriterTag.Fieldset); _renderedFieldSet = true; writer.RenderBeginTag(HtmlTextWriterTag.Legend); writer.Write(s); writer.RenderEndTag(); } } public override void RenderEndTag(HtmlTextWriter writer) { if (_renderedFieldSet) { writer.RenderEndTag(); } base.RenderEndTag(writer); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Drawing.Design; using System.Web; using System.Web.UI; using System.Web.Util; ////// [ Designer("System.Web.UI.Design.WebControls.PanelContainerDesigner, " + AssemblyRef.SystemDesign), ParseChildren(false), PersistChildren(true), ] public class Panel : WebControl { private string _defaultButton; private bool _renderedFieldSet = false; ///Constructs a panel for specifies layout regions /// on a page and defines its properties. ////// Initializes a new instance of the public Panel() : base(HtmlTextWriterTag.Div) { } ///class. /// /// [ WebCategory("Appearance"), DefaultValue(""), Editor("System.Web.UI.Design.ImageUrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor)), UrlProperty(), WebSysDescription(SR.Panel_BackImageUrl) ] public virtual string BackImageUrl { get { if (ControlStyleCreated == false) { return String.Empty; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.BackImageUrl; } string s = (string)ViewState["BackImageUrl"]; return((s == null) ? String.Empty : s); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.BackImageUrl = value; } else { ViewState["BackImageUrl"] = value; } } } ///Gets or sets the URL of the background image for the panel control. ////// Gets or sets default button for the panel /// [ DefaultValue(""), Themeable(false), WebCategory("Behavior"), WebSysDescription(SR.Panel_DefaultButton) ] public virtual string DefaultButton { get { if (_defaultButton == null) { return String.Empty; } return _defaultButton; } set { _defaultButton = value; } } ////// [ DefaultValue(ContentDirection.NotSet), WebCategory("Layout"), WebSysDescription(SR.Panel_Direction) ] public virtual ContentDirection Direction { get { if (ControlStyleCreated == false) { return ContentDirection.NotSet; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.Direction; } object direction = ViewState["Direction"]; return direction == null ? ContentDirection.NotSet : (ContentDirection) direction; } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.Direction = value; } else { ViewState["Direction"] = value; } } } [ Localizable(true), DefaultValue(""), WebCategory("Appearance"), WebSysDescription(SR.Panel_GroupingText) ] public virtual string GroupingText { get { string s = (string)ViewState["GroupingText"]; return (s != null) ? s : String.Empty; } set { ViewState["GroupingText"] = value; } } ///Gets or sets the direction of text in the panel ////// [ WebCategory("Layout"), DefaultValue(HorizontalAlign.NotSet), WebSysDescription(SR.Panel_HorizontalAlign) ] public virtual HorizontalAlign HorizontalAlign { get { if (ControlStyleCreated == false) { return HorizontalAlign.NotSet; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.HorizontalAlign; } object o = ViewState["HorizontalAlign"]; return ((o == null) ? HorizontalAlign.NotSet : (HorizontalAlign)o); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.HorizontalAlign = value; } else { if (value < HorizontalAlign.NotSet || value > HorizontalAlign.Justify) { throw new ArgumentOutOfRangeException("value"); } ViewState["HorizontalAlign"] = value; } } } public override bool SupportsDisabledAttribute { get { return RenderingCompatibility < VersionUtil.Framework40; } } ///Gets or sets the horizontal alignment of the contents within the panel. ////// [ DefaultValue(ScrollBars.None), WebCategory("Layout"), WebSysDescription(SR.Panel_ScrollBars) ] public virtual ScrollBars ScrollBars { get { if (ControlStyleCreated == false) { return ScrollBars.None; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.ScrollBars; } object scroll = ViewState["ScrollBars"]; return ((scroll == null) ? ScrollBars.None : (ScrollBars)scroll); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.ScrollBars = value; } else { ViewState["ScrollBars"] = value; } } } ///Gets or sets the scrollbar behavior of the panel. ////// [ WebCategory("Layout"), DefaultValue(true), WebSysDescription(SR.Panel_Wrap) ] public virtual bool Wrap { get { if (ControlStyleCreated == false) { return true; } PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { return panelStyle.Wrap; } object b = ViewState["Wrap"]; return ((b == null) ? true : (bool)b); } set { PanelStyle panelStyle = ControlStyle as PanelStyle; if (panelStyle != null) { panelStyle.Wrap = value; } else { ViewState["Wrap"] = value; } } } ///Gets or sets a value /// indicating whether the content wraps within the panel. ////// /// Add background-image to list of style attributes to render. /// Add align and nowrap to list of attributes to render. /// protected override void AddAttributesToRender(HtmlTextWriter writer) { base.AddAttributesToRender(writer); string s = BackImageUrl; // Whidbey 12856 if (s.Trim().Length > 0) { writer.AddStyleAttribute(HtmlTextWriterStyle.BackgroundImage, "url(" + ResolveClientUrl(s) + ")"); } AddScrollingAttribute(ScrollBars, writer); HorizontalAlign hAlign = HorizontalAlign; if (hAlign != HorizontalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(HorizontalAlign)); writer.AddStyleAttribute(HtmlTextWriterStyle.TextAlign, hac.ConvertToInvariantString(hAlign).ToLowerInvariant()); } if (!Wrap) { if (EnableLegacyRendering) { writer.AddAttribute(HtmlTextWriterAttribute.Nowrap, "nowrap", false); } else { writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); } } if (Direction == ContentDirection.LeftToRight) { writer.AddAttribute(HtmlTextWriterAttribute.Dir, "ltr"); } else if (Direction == ContentDirection.RightToLeft) { writer.AddAttribute(HtmlTextWriterAttribute.Dir, "rtl"); } if (!DesignMode && (Page != null) && (Page.RequestInternal != null) && (Page.Request.Browser.EcmaScriptVersion.Major > 0) && (Page.Request.Browser.W3CDomVersion.Major > 0)) { if (DefaultButton.Length > 0) { Control c = FindControl(DefaultButton); if (c is IButtonControl) { Page.ClientScript.RegisterDefaultButtonScript(c, writer, true /* UseAddAttribute */); } else { throw new InvalidOperationException(SR.GetString(SR.HtmlForm_OnlyIButtonControlCanBeDefaultButton, ID)); } } } } ////// [To be supplied.] /// private void AddScrollingAttribute(ScrollBars scrollBars, HtmlTextWriter writer) { switch (scrollBars) { case ScrollBars.Horizontal: writer.AddStyleAttribute(HtmlTextWriterStyle.OverflowX, "scroll"); break; case ScrollBars.Vertical: writer.AddStyleAttribute(HtmlTextWriterStyle.OverflowY, "scroll"); break; case ScrollBars.Both: writer.AddStyleAttribute(HtmlTextWriterStyle.Overflow, "scroll"); break; case ScrollBars.Auto: writer.AddStyleAttribute(HtmlTextWriterStyle.Overflow, "auto"); break; default: break; } } ////// /// protected override Style CreateControlStyle() { return new PanelStyle(ViewState); } ///A protected method. Creates a panel control style. ///public override void RenderBeginTag(HtmlTextWriter writer) { AddAttributesToRender(writer); HtmlTextWriterTag tagKey = TagKey; if (tagKey != HtmlTextWriterTag.Unknown) { writer.RenderBeginTag(tagKey); } else { writer.RenderBeginTag(TagName); } string s = GroupingText; bool useGrouping = (s.Length != 0) && !(writer is Html32TextWriter); if (useGrouping) { writer.RenderBeginTag(HtmlTextWriterTag.Fieldset); _renderedFieldSet = true; writer.RenderBeginTag(HtmlTextWriterTag.Legend); writer.Write(s); writer.RenderEndTag(); } } public override void RenderEndTag(HtmlTextWriter writer) { if (_renderedFieldSet) { writer.RenderEndTag(); } base.RenderEndTag(writer); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WindowsTitleBar.cs
- SplitterPanelDesigner.cs
- Pens.cs
- SHA384Cng.cs
- ForceCopyBuildProvider.cs
- XsdBuilder.cs
- ExternalException.cs
- HebrewCalendar.cs
- WpfGeneratedKnownProperties.cs
- arabicshape.cs
- Point3DCollection.cs
- XmlMembersMapping.cs
- Serialization.cs
- BinaryFormatterWriter.cs
- MediaElement.cs
- XmlSchemaAnnotation.cs
- MailMessage.cs
- SmiEventSink.cs
- messageonlyhwndwrapper.cs
- FormsAuthenticationEventArgs.cs
- ComponentDispatcherThread.cs
- HybridDictionary.cs
- CodeTypeReferenceCollection.cs
- NullableDecimalSumAggregationOperator.cs
- MouseCaptureWithinProperty.cs
- StringFunctions.cs
- PointF.cs
- DataComponentMethodGenerator.cs
- TextRangeEdit.cs
- PeerNameRecord.cs
- HttpServerUtilityWrapper.cs
- ValidationRuleCollection.cs
- EventRoute.cs
- TreeNodeBinding.cs
- PlatformCulture.cs
- RuntimeWrappedException.cs
- SchemaObjectWriter.cs
- NTAccount.cs
- FixedSOMElement.cs
- OutputBuffer.cs
- WebPartsSection.cs
- DocumentPageTextView.cs
- XmlAnyAttributeAttribute.cs
- ContextStack.cs
- ComplexType.cs
- SizeAnimation.cs
- XPathDocumentBuilder.cs
- SignatureHelper.cs
- ExpressionBuilderCollection.cs
- SearchExpression.cs
- NamespaceCollection.cs
- ValidatorCollection.cs
- NamespaceInfo.cs
- AnnotationComponentChooser.cs
- SignalGate.cs
- Event.cs
- ServiceHostingEnvironmentSection.cs
- TextElement.cs
- MDIWindowDialog.cs
- CodeTypeDeclarationCollection.cs
- WorkflowService.cs
- TransformDescriptor.cs
- ExpressionWriter.cs
- TraceEventCache.cs
- VBCodeProvider.cs
- FormsAuthenticationTicket.cs
- WorkflowQueueInfo.cs
- SafeRightsManagementQueryHandle.cs
- Rect3D.cs
- WebPartEditorCancelVerb.cs
- EmissiveMaterial.cs
- Menu.cs
- DateTimeFormatInfo.cs
- EventProperty.cs
- DataGridViewLayoutData.cs
- WebBaseEventKeyComparer.cs
- StorageSetMapping.cs
- ThrowHelper.cs
- XPathNode.cs
- XmlArrayItemAttributes.cs
- BitmapSizeOptions.cs
- TextAdaptor.cs
- TabControlCancelEvent.cs
- GenericNameHandler.cs
- FormViewUpdateEventArgs.cs
- UpdateExpressionVisitor.cs
- WebPartDisplayMode.cs
- Activity.cs
- ChtmlTextWriter.cs
- TextTrailingWordEllipsis.cs
- MenuAutomationPeer.cs
- CompilerParameters.cs
- XmlDigitalSignatureProcessor.cs
- FileSecurity.cs
- DbExpressionRules.cs
- AssignDesigner.xaml.cs
- TextReader.cs
- RequiredAttributeAttribute.cs
- HGlobalSafeHandle.cs
- WindowsEditBox.cs