Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / TableItemStyle.cs / 2 / TableItemStyle.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Web; using System.Web.Configuration; using System.Web.UI; using System.Security.Permissions; ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class TableItemStyle : Style { ///Specifies the style of the table item. ////// internal const int PROP_HORZALIGN = 0x00010000; ///Specifies the horizontal alignment property. This field is /// constant. ////// internal const int PROP_VERTALIGN = 0x00020000; ///Specifies the vertical alignment property. This field is /// constant. ////// internal const int PROP_WRAP = 0x00040000; ///Specifies the /// wrap property. This field is constant. ////// public TableItemStyle() : base() { } ///Creates a new instance of the ///class. /// public TableItemStyle(StateBag bag) : base(bag) { } private bool EnableLegacyRendering { get { return (RuntimeConfig.GetAppConfig().XhtmlConformance.Mode == XhtmlConformanceMode.Legacy); } } ////// Creates a new instance of the ///class with the /// specified state bag. /// /// [ WebCategory("Layout"), DefaultValue(HorizontalAlign.NotSet), WebSysDescription(SR.TableItem_HorizontalAlign), NotifyParentProperty(true) ] public virtual HorizontalAlign HorizontalAlign { get { if (IsSet(PROP_HORZALIGN)) { return(HorizontalAlign)(ViewState["HorizontalAlign"]); } return HorizontalAlign.NotSet; } set { if (value < HorizontalAlign.NotSet || value > HorizontalAlign.Justify) { throw new ArgumentOutOfRangeException("value"); } ViewState["HorizontalAlign"] = value; SetBit(PROP_HORZALIGN); } } ///Gets or sets the horizontal alignment of the table item. ////// [ WebCategory("Layout"), DefaultValue(VerticalAlign.NotSet), WebSysDescription(SR.TableItem_VerticalAlign), NotifyParentProperty(true) ] public virtual VerticalAlign VerticalAlign { get { if (IsSet(PROP_VERTALIGN)) { return(VerticalAlign)(ViewState["VerticalAlign"]); } return VerticalAlign.NotSet; } set { if (value < VerticalAlign.NotSet || value > VerticalAlign.Bottom) { throw new ArgumentOutOfRangeException("value"); } ViewState["VerticalAlign"] = value; SetBit(PROP_VERTALIGN); } } ///Gets or sets the vertical alignment of the table item. ////// [ WebCategory("Layout"), DefaultValue(true), WebSysDescription(SR.TableItemStyle_Wrap), NotifyParentProperty(true) ] public virtual bool Wrap { get { if (IsSet(PROP_WRAP)) { return(bool)(ViewState["Wrap"]); } return true; } set { ViewState["Wrap"] = value; SetBit(PROP_WRAP); } } ///Gets or sets a value indicating whether the cell content wraps within the cell. ////// public override void AddAttributesToRender(HtmlTextWriter writer, WebControl owner) { base.AddAttributesToRender(writer, owner); if (!Wrap) { if (IsControlEnableLegacyRendering(owner)) { writer.AddAttribute(HtmlTextWriterAttribute.Nowrap, "nowrap"); } else { writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); } } HorizontalAlign hAlign = HorizontalAlign; if (hAlign != HorizontalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(HorizontalAlign)); writer.AddAttribute(HtmlTextWriterAttribute.Align, hac.ConvertToString(hAlign).ToLower(CultureInfo.InvariantCulture)); } VerticalAlign vAlign = VerticalAlign; if (vAlign != VerticalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(VerticalAlign)); writer.AddAttribute(HtmlTextWriterAttribute.Valign, hac.ConvertToString(vAlign).ToLower(CultureInfo.InvariantCulture)); } } ///Adds information about horizontal alignment, vertical alignment, and wrap to the list of attributes to render. ////// public override void CopyFrom(Style s) { if (s != null && !s.IsEmpty) { base.CopyFrom(s); if (s is TableItemStyle) { TableItemStyle ts = (TableItemStyle)s; if (s.RegisteredCssClass.Length != 0) { if (ts.IsSet(PROP_WRAP)) { ViewState.Remove("Wrap"); ClearBit(PROP_WRAP); } } else { if (ts.IsSet(PROP_WRAP)) this.Wrap = ts.Wrap; } if (ts.IsSet(PROP_HORZALIGN)) this.HorizontalAlign = ts.HorizontalAlign; if (ts.IsSet(PROP_VERTALIGN)) this.VerticalAlign = ts.VerticalAlign; } } } private bool IsControlEnableLegacyRendering(Control control) { if (control != null) { return control.EnableLegacyRendering; } else { return EnableLegacyRendering; } } ///Copies non-blank elements from the specified style, overwriting existing /// style elements if necessary. ////// public override void MergeWith(Style s) { if (s != null && !s.IsEmpty) { if (IsEmpty) { // merge into an empty style is equivalent to a copy, which // is more efficient CopyFrom(s); return; } base.MergeWith(s); if (s is TableItemStyle) { TableItemStyle ts = (TableItemStyle)s; // Since we're already copying the registered CSS class in base.MergeWith, we don't // need to any attributes that would be included in that class. if (s.RegisteredCssClass.Length == 0) { if (ts.IsSet(PROP_WRAP) && !this.IsSet(PROP_WRAP)) this.Wrap = ts.Wrap; } if (ts.IsSet(PROP_HORZALIGN) && !this.IsSet(PROP_HORZALIGN)) this.HorizontalAlign = ts.HorizontalAlign; if (ts.IsSet(PROP_VERTALIGN) && !this.IsSet(PROP_VERTALIGN)) this.VerticalAlign = ts.VerticalAlign; } } } ///Copies non-blank elements from the specified style, but will not overwrite /// any existing style elements. ////// public override void Reset() { if (IsSet(PROP_HORZALIGN)) ViewState.Remove("HorizontalAlign"); if (IsSet(PROP_VERTALIGN)) ViewState.Remove("VerticalAlign"); if (IsSet(PROP_WRAP)) ViewState.Remove("Wrap"); base.Reset(); } ////// Clears out any defined style elements from the state bag. /// ////// Only serialize if the Wrap property has changed. This means that we serialize "false" /// if they were set to false in the designer. /// private void ResetWrap() { ViewState.Remove("Wrap"); ClearBit(PROP_WRAP); } ////// Only serialize if the Wrap property has changed. This means that we serialize "false" /// if they were set to false in the designer. /// private bool ShouldSerializeWrap() { return IsSet(PROP_WRAP); } } } // 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.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Web; using System.Web.Configuration; using System.Web.UI; using System.Security.Permissions; ////// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class TableItemStyle : Style { ///Specifies the style of the table item. ////// internal const int PROP_HORZALIGN = 0x00010000; ///Specifies the horizontal alignment property. This field is /// constant. ////// internal const int PROP_VERTALIGN = 0x00020000; ///Specifies the vertical alignment property. This field is /// constant. ////// internal const int PROP_WRAP = 0x00040000; ///Specifies the /// wrap property. This field is constant. ////// public TableItemStyle() : base() { } ///Creates a new instance of the ///class. /// public TableItemStyle(StateBag bag) : base(bag) { } private bool EnableLegacyRendering { get { return (RuntimeConfig.GetAppConfig().XhtmlConformance.Mode == XhtmlConformanceMode.Legacy); } } ////// Creates a new instance of the ///class with the /// specified state bag. /// /// [ WebCategory("Layout"), DefaultValue(HorizontalAlign.NotSet), WebSysDescription(SR.TableItem_HorizontalAlign), NotifyParentProperty(true) ] public virtual HorizontalAlign HorizontalAlign { get { if (IsSet(PROP_HORZALIGN)) { return(HorizontalAlign)(ViewState["HorizontalAlign"]); } return HorizontalAlign.NotSet; } set { if (value < HorizontalAlign.NotSet || value > HorizontalAlign.Justify) { throw new ArgumentOutOfRangeException("value"); } ViewState["HorizontalAlign"] = value; SetBit(PROP_HORZALIGN); } } ///Gets or sets the horizontal alignment of the table item. ////// [ WebCategory("Layout"), DefaultValue(VerticalAlign.NotSet), WebSysDescription(SR.TableItem_VerticalAlign), NotifyParentProperty(true) ] public virtual VerticalAlign VerticalAlign { get { if (IsSet(PROP_VERTALIGN)) { return(VerticalAlign)(ViewState["VerticalAlign"]); } return VerticalAlign.NotSet; } set { if (value < VerticalAlign.NotSet || value > VerticalAlign.Bottom) { throw new ArgumentOutOfRangeException("value"); } ViewState["VerticalAlign"] = value; SetBit(PROP_VERTALIGN); } } ///Gets or sets the vertical alignment of the table item. ////// [ WebCategory("Layout"), DefaultValue(true), WebSysDescription(SR.TableItemStyle_Wrap), NotifyParentProperty(true) ] public virtual bool Wrap { get { if (IsSet(PROP_WRAP)) { return(bool)(ViewState["Wrap"]); } return true; } set { ViewState["Wrap"] = value; SetBit(PROP_WRAP); } } ///Gets or sets a value indicating whether the cell content wraps within the cell. ////// public override void AddAttributesToRender(HtmlTextWriter writer, WebControl owner) { base.AddAttributesToRender(writer, owner); if (!Wrap) { if (IsControlEnableLegacyRendering(owner)) { writer.AddAttribute(HtmlTextWriterAttribute.Nowrap, "nowrap"); } else { writer.AddStyleAttribute(HtmlTextWriterStyle.WhiteSpace, "nowrap"); } } HorizontalAlign hAlign = HorizontalAlign; if (hAlign != HorizontalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(HorizontalAlign)); writer.AddAttribute(HtmlTextWriterAttribute.Align, hac.ConvertToString(hAlign).ToLower(CultureInfo.InvariantCulture)); } VerticalAlign vAlign = VerticalAlign; if (vAlign != VerticalAlign.NotSet) { TypeConverter hac = TypeDescriptor.GetConverter(typeof(VerticalAlign)); writer.AddAttribute(HtmlTextWriterAttribute.Valign, hac.ConvertToString(vAlign).ToLower(CultureInfo.InvariantCulture)); } } ///Adds information about horizontal alignment, vertical alignment, and wrap to the list of attributes to render. ////// public override void CopyFrom(Style s) { if (s != null && !s.IsEmpty) { base.CopyFrom(s); if (s is TableItemStyle) { TableItemStyle ts = (TableItemStyle)s; if (s.RegisteredCssClass.Length != 0) { if (ts.IsSet(PROP_WRAP)) { ViewState.Remove("Wrap"); ClearBit(PROP_WRAP); } } else { if (ts.IsSet(PROP_WRAP)) this.Wrap = ts.Wrap; } if (ts.IsSet(PROP_HORZALIGN)) this.HorizontalAlign = ts.HorizontalAlign; if (ts.IsSet(PROP_VERTALIGN)) this.VerticalAlign = ts.VerticalAlign; } } } private bool IsControlEnableLegacyRendering(Control control) { if (control != null) { return control.EnableLegacyRendering; } else { return EnableLegacyRendering; } } ///Copies non-blank elements from the specified style, overwriting existing /// style elements if necessary. ////// public override void MergeWith(Style s) { if (s != null && !s.IsEmpty) { if (IsEmpty) { // merge into an empty style is equivalent to a copy, which // is more efficient CopyFrom(s); return; } base.MergeWith(s); if (s is TableItemStyle) { TableItemStyle ts = (TableItemStyle)s; // Since we're already copying the registered CSS class in base.MergeWith, we don't // need to any attributes that would be included in that class. if (s.RegisteredCssClass.Length == 0) { if (ts.IsSet(PROP_WRAP) && !this.IsSet(PROP_WRAP)) this.Wrap = ts.Wrap; } if (ts.IsSet(PROP_HORZALIGN) && !this.IsSet(PROP_HORZALIGN)) this.HorizontalAlign = ts.HorizontalAlign; if (ts.IsSet(PROP_VERTALIGN) && !this.IsSet(PROP_VERTALIGN)) this.VerticalAlign = ts.VerticalAlign; } } } ///Copies non-blank elements from the specified style, but will not overwrite /// any existing style elements. ////// public override void Reset() { if (IsSet(PROP_HORZALIGN)) ViewState.Remove("HorizontalAlign"); if (IsSet(PROP_VERTALIGN)) ViewState.Remove("VerticalAlign"); if (IsSet(PROP_WRAP)) ViewState.Remove("Wrap"); base.Reset(); } ////// Clears out any defined style elements from the state bag. /// ////// Only serialize if the Wrap property has changed. This means that we serialize "false" /// if they were set to false in the designer. /// private void ResetWrap() { ViewState.Remove("Wrap"); ClearBit(PROP_WRAP); } ////// Only serialize if the Wrap property has changed. This means that we serialize "false" /// if they were set to false in the designer. /// private bool ShouldSerializeWrap() { return IsSet(PROP_WRAP); } } } // 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
- InterleavedZipPartStream.cs
- ZipIOExtraFieldElement.cs
- SqlException.cs
- ProfileModule.cs
- MarkupExtensionParser.cs
- FocusWithinProperty.cs
- DesignOnlyAttribute.cs
- ViewValidator.cs
- SizeConverter.cs
- CaseStatementProjectedSlot.cs
- EventToken.cs
- WebBrowserNavigatingEventHandler.cs
- SelectorAutomationPeer.cs
- NameNode.cs
- CustomMenuItemCollection.cs
- ButtonChrome.cs
- AttributeInfo.cs
- ListViewUpdateEventArgs.cs
- NativeObjectSecurity.cs
- SectionRecord.cs
- OleDbConnectionInternal.cs
- SqlUtils.cs
- CollaborationHelperFunctions.cs
- odbcmetadatacollectionnames.cs
- RegexTree.cs
- TextEffect.cs
- XhtmlBasicCalendarAdapter.cs
- RemotingServices.cs
- AccessKeyManager.cs
- UnitySerializationHolder.cs
- DiscoveryServerProtocol.cs
- PrePostDescendentsWalker.cs
- SocketAddress.cs
- ImportOptions.cs
- XmlElementAttributes.cs
- RequestBringIntoViewEventArgs.cs
- XmlSerializer.cs
- ThreadStaticAttribute.cs
- COAUTHINFO.cs
- Missing.cs
- EncryptedKey.cs
- Variable.cs
- ProtocolInformationReader.cs
- TypeLoader.cs
- ControlEvent.cs
- TableItemProviderWrapper.cs
- Relationship.cs
- SynchronizedDispatch.cs
- FormClosedEvent.cs
- ActivityTypeDesigner.xaml.cs
- XPathNavigatorKeyComparer.cs
- URL.cs
- EditorPartChrome.cs
- Environment.cs
- XamlHostingSectionGroup.cs
- Util.cs
- SafeFileMapViewHandle.cs
- Solver.cs
- ThrowHelper.cs
- HttpDigestClientElement.cs
- PrivilegeNotHeldException.cs
- LocalServiceSecuritySettings.cs
- ResourceAssociationTypeEnd.cs
- ConstraintManager.cs
- ToolstripProfessionalRenderer.cs
- FormParameter.cs
- ConfigXmlSignificantWhitespace.cs
- SmtpException.cs
- SqlReorderer.cs
- SamlSerializer.cs
- ValidationError.cs
- HandleExceptionArgs.cs
- WindowsButton.cs
- SecurityDocument.cs
- XmlDataProvider.cs
- XmlRawWriter.cs
- EntitySqlQueryState.cs
- DetailsView.cs
- uribuilder.cs
- Metadata.cs
- WSFederationHttpSecurity.cs
- PagesChangedEventArgs.cs
- ForwardPositionQuery.cs
- DtdParser.cs
- WebPartConnectionCollection.cs
- TimelineCollection.cs
- ResourceExpressionBuilder.cs
- PageCodeDomTreeGenerator.cs
- SpecialTypeDataContract.cs
- ChtmlPhoneCallAdapter.cs
- PageSettings.cs
- SectionXmlInfo.cs
- ScrollViewerAutomationPeer.cs
- _SslSessionsCache.cs
- SqlDataSourceConfigureSortForm.cs
- IProducerConsumerCollection.cs
- dataprotectionpermission.cs
- DataSourceHelper.cs
- InvokeBase.cs
- LinqToSqlWrapper.cs