Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / WinForms / Managed / System / WinForms / DataGridViewAdvancedBorderStyle.cs / 1 / DataGridViewAdvancedBorderStyle.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; using System.Diagnostics; using System.ComponentModel; ///public sealed class DataGridViewAdvancedBorderStyle : ICloneable { private DataGridView owner; private bool all = true; private DataGridViewAdvancedCellBorderStyle banned1, banned2, banned3; private DataGridViewAdvancedCellBorderStyle top = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle left = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle right = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle bottom = DataGridViewAdvancedCellBorderStyle.None; /// public DataGridViewAdvancedBorderStyle() : this(null, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet) { } internal DataGridViewAdvancedBorderStyle(DataGridView owner) : this(owner, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet) { } /// /// Creates a new DataGridViewAdvancedBorderStyle. The specified owner will /// be notified when the values are changed. /// internal DataGridViewAdvancedBorderStyle(DataGridView owner, DataGridViewAdvancedCellBorderStyle banned1, DataGridViewAdvancedCellBorderStyle banned2, DataGridViewAdvancedCellBorderStyle banned3) { this.owner = owner; this.banned1 = banned1; this.banned2 = banned2; this.banned3 = banned3; } ///public DataGridViewAdvancedCellBorderStyle All { get { return this.all ? this.top : DataGridViewAdvancedCellBorderStyle.NotSet; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet || value == this.banned1 || value == this.banned2 || value == this.banned3) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "All")); } if (!this.all || this.top != value) { this.all = true; this.top = this.left = this.right = this.bottom = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Bottom { get { if (this.all) { return this.top; } return this.bottom; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Bottom")); } this.BottomInternal = value; } } internal DataGridViewAdvancedCellBorderStyle BottomInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.bottom != value)) { if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.bottom = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Left { get { if (this.all) { return this.top; } return this.left; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Left")); } this.LeftInternal = value; } } internal DataGridViewAdvancedCellBorderStyle LeftInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.left != value)) { if ((this.owner != null && this.owner.RightToLeftInternal) && (value == DataGridViewAdvancedCellBorderStyle.InsetDouble || value == DataGridViewAdvancedCellBorderStyle.OutsetDouble)) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Left")); } if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.left = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Right { get { if (this.all) { return this.top; } return this.right; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Right")); } this.RightInternal = value; } } internal DataGridViewAdvancedCellBorderStyle RightInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.right != value)) { if ((this.owner != null && !this.owner.RightToLeftInternal) && (value == DataGridViewAdvancedCellBorderStyle.InsetDouble || value == DataGridViewAdvancedCellBorderStyle.OutsetDouble)) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Right")); } if (this.all) { if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.right = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Top { get { return this.top; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Top")); } this.TopInternal = value; } } internal DataGridViewAdvancedCellBorderStyle TopInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.top != value)) { if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.top = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// /// public override bool Equals(object other) { DataGridViewAdvancedBorderStyle dgvabsOther = other as DataGridViewAdvancedBorderStyle; if (dgvabsOther == null) { return false; } return dgvabsOther.all == this.all && dgvabsOther.top == this.top && dgvabsOther.left == this.left && dgvabsOther.bottom == this.bottom && dgvabsOther.right == this.right; } /// /// public override int GetHashCode() { return WindowsFormsUtils.GetCombinedHashCodes((int) this.top, (int) this.left, (int) this.bottom, (int) this.right); } /// /// public override string ToString() { return "DataGridViewAdvancedBorderStyle { All=" + this.All.ToString() + ", Left=" + this.Left.ToString() + ", Right=" + this.Right.ToString() + ", Top=" + this.Top.ToString() + ", Bottom=" + this.Bottom.ToString() + " }"; } /// /// object ICloneable.Clone() { DataGridViewAdvancedBorderStyle dgvabs = new DataGridViewAdvancedBorderStyle(this.owner, this.banned1, this.banned2, this.banned3); dgvabs.all = this.all; dgvabs.top = this.top; dgvabs.right = this.right; dgvabs.bottom = this.bottom; dgvabs.left = this.left; return dgvabs; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; using System.Diagnostics; using System.ComponentModel; ///public sealed class DataGridViewAdvancedBorderStyle : ICloneable { private DataGridView owner; private bool all = true; private DataGridViewAdvancedCellBorderStyle banned1, banned2, banned3; private DataGridViewAdvancedCellBorderStyle top = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle left = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle right = DataGridViewAdvancedCellBorderStyle.None; private DataGridViewAdvancedCellBorderStyle bottom = DataGridViewAdvancedCellBorderStyle.None; /// public DataGridViewAdvancedBorderStyle() : this(null, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet) { } internal DataGridViewAdvancedBorderStyle(DataGridView owner) : this(owner, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet, DataGridViewAdvancedCellBorderStyle.NotSet) { } /// /// Creates a new DataGridViewAdvancedBorderStyle. The specified owner will /// be notified when the values are changed. /// internal DataGridViewAdvancedBorderStyle(DataGridView owner, DataGridViewAdvancedCellBorderStyle banned1, DataGridViewAdvancedCellBorderStyle banned2, DataGridViewAdvancedCellBorderStyle banned3) { this.owner = owner; this.banned1 = banned1; this.banned2 = banned2; this.banned3 = banned3; } ///public DataGridViewAdvancedCellBorderStyle All { get { return this.all ? this.top : DataGridViewAdvancedCellBorderStyle.NotSet; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet || value == this.banned1 || value == this.banned2 || value == this.banned3) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "All")); } if (!this.all || this.top != value) { this.all = true; this.top = this.left = this.right = this.bottom = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Bottom { get { if (this.all) { return this.top; } return this.bottom; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Bottom")); } this.BottomInternal = value; } } internal DataGridViewAdvancedCellBorderStyle BottomInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.bottom != value)) { if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.bottom = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Left { get { if (this.all) { return this.top; } return this.left; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Left")); } this.LeftInternal = value; } } internal DataGridViewAdvancedCellBorderStyle LeftInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.left != value)) { if ((this.owner != null && this.owner.RightToLeftInternal) && (value == DataGridViewAdvancedCellBorderStyle.InsetDouble || value == DataGridViewAdvancedCellBorderStyle.OutsetDouble)) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Left")); } if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.left = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Right { get { if (this.all) { return this.top; } return this.right; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Right")); } this.RightInternal = value; } } internal DataGridViewAdvancedCellBorderStyle RightInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.right != value)) { if ((this.owner != null && !this.owner.RightToLeftInternal) && (value == DataGridViewAdvancedCellBorderStyle.InsetDouble || value == DataGridViewAdvancedCellBorderStyle.OutsetDouble)) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Right")); } if (this.all) { if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.right = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// public DataGridViewAdvancedCellBorderStyle Top { get { return this.top; } set { // Sequential enum. Valid values are 0x0 to 0x7 if (!ClientUtils.IsEnumValid(value, (int)value, (int)DataGridViewAdvancedCellBorderStyle.NotSet, (int)DataGridViewAdvancedCellBorderStyle.OutsetPartial)) { throw new InvalidEnumArgumentException("value", (int)value, typeof(DataGridViewAdvancedCellBorderStyle)); } if (value == DataGridViewAdvancedCellBorderStyle.NotSet) { throw new ArgumentException(SR.GetString(SR.DataGridView_AdvancedCellBorderStyleInvalid, "Top")); } this.TopInternal = value; } } internal DataGridViewAdvancedCellBorderStyle TopInternal { set { //Debug.Assert(Enum.IsDefined(typeof(DataGridViewAdvancedCellBorderStyle), value)); //Debug.Assert(value != DataGridViewAdvancedCellBorderStyle.NotSet); if ((this.all && this.top != value) || (!this.all && this.top != value)) { if (this.all) { if (this.right == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.right = DataGridViewAdvancedCellBorderStyle.Outset; } if (this.bottom == DataGridViewAdvancedCellBorderStyle.OutsetDouble) { this.bottom = DataGridViewAdvancedCellBorderStyle.Outset; } } this.all = false; this.top = value; if (this.owner != null) { this.owner.OnAdvancedBorderStyleChanged(this); } } } } /// /// public override bool Equals(object other) { DataGridViewAdvancedBorderStyle dgvabsOther = other as DataGridViewAdvancedBorderStyle; if (dgvabsOther == null) { return false; } return dgvabsOther.all == this.all && dgvabsOther.top == this.top && dgvabsOther.left == this.left && dgvabsOther.bottom == this.bottom && dgvabsOther.right == this.right; } /// /// public override int GetHashCode() { return WindowsFormsUtils.GetCombinedHashCodes((int) this.top, (int) this.left, (int) this.bottom, (int) this.right); } /// /// public override string ToString() { return "DataGridViewAdvancedBorderStyle { All=" + this.All.ToString() + ", Left=" + this.Left.ToString() + ", Right=" + this.Right.ToString() + ", Top=" + this.Top.ToString() + ", Bottom=" + this.Bottom.ToString() + " }"; } /// /// object ICloneable.Clone() { DataGridViewAdvancedBorderStyle dgvabs = new DataGridViewAdvancedBorderStyle(this.owner, this.banned1, this.banned2, this.banned3); dgvabs.all = this.all; dgvabs.top = this.top; dgvabs.right = this.right; dgvabs.bottom = this.bottom; dgvabs.left = this.left; return dgvabs; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Accessible.cs
- XmlParserContext.cs
- RoleBoolean.cs
- XsdDateTime.cs
- ProcessStartInfo.cs
- AutomationPatternInfo.cs
- CoreSwitches.cs
- Terminate.cs
- GroupByQueryOperator.cs
- XsdBuildProvider.cs
- DocComment.cs
- InputBindingCollection.cs
- SignalGate.cs
- EpmCustomContentWriterNodeData.cs
- ClockGroup.cs
- DesignTable.cs
- XPathException.cs
- UIElement.cs
- SyntaxCheck.cs
- CodeAttributeArgumentCollection.cs
- Selection.cs
- ColumnMapVisitor.cs
- PublishLicense.cs
- Helper.cs
- HttpMethodAttribute.cs
- AuthorizationRule.cs
- Block.cs
- SoapSchemaImporter.cs
- rsa.cs
- Int16Converter.cs
- MultiBinding.cs
- ApplicationHost.cs
- BitmapFrameEncode.cs
- SymbolMethod.cs
- ProfileSettingsCollection.cs
- HttpRuntimeSection.cs
- MouseButton.cs
- SatelliteContractVersionAttribute.cs
- CustomErrorCollection.cs
- RtfToken.cs
- AuthenticateEventArgs.cs
- ProfilePropertySettingsCollection.cs
- DrawItemEvent.cs
- BufferModesCollection.cs
- _ListenerResponseStream.cs
- HtmlInputText.cs
- TableLayoutRowStyleCollection.cs
- safemediahandle.cs
- BitmapFrameDecode.cs
- UnionCodeGroup.cs
- TypeDelegator.cs
- ExchangeUtilities.cs
- ListViewDeleteEventArgs.cs
- LoginName.cs
- DeflateInput.cs
- UserControl.cs
- EditorZoneAutoFormat.cs
- VScrollBar.cs
- DropSource.cs
- CallbackValidatorAttribute.cs
- TextOptionsInternal.cs
- StaticDataManager.cs
- RawUIStateInputReport.cs
- UnsupportedPolicyOptionsException.cs
- SourceLineInfo.cs
- BridgeDataReader.cs
- TextServicesCompartmentContext.cs
- FocusWithinProperty.cs
- ControlsConfig.cs
- TraceHwndHost.cs
- OperationCanceledException.cs
- FeatureSupport.cs
- BooleanConverter.cs
- SecurityTokenValidationException.cs
- ErrorHandlingReceiver.cs
- WorkflowElementDialog.cs
- DataKeyCollection.cs
- EncryptedType.cs
- KeyInfo.cs
- NodeLabelEditEvent.cs
- StringReader.cs
- IItemContainerGenerator.cs
- AesManaged.cs
- SafeLocalMemHandle.cs
- SystemDropShadowChrome.cs
- DesignerCommandSet.cs
- Clipboard.cs
- MatrixStack.cs
- KoreanCalendar.cs
- CompoundFileReference.cs
- ClientData.cs
- SetStoryboardSpeedRatio.cs
- propertytag.cs
- SoapCommonClasses.cs
- WebHttpEndpoint.cs
- StrongName.cs
- SQLDateTime.cs
- TrackingStringDictionary.cs
- CompilerGeneratedAttribute.cs
- MetadataSerializer.cs