Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / PtsHost / ColumnPropertiesGroup.cs / 1305600 / ColumnPropertiesGroup.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // File: ColumnPropertiesGroup.cs // // Description: Column properties group. // // History: // 05/05/2003 : [....] - created. // 07/18/2003 : [....] - converted to new Property Engine. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using System.Windows; using System.Windows.Media; using System.Windows.Documents; using MS.Internal.Text; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Column properties group. // --------------------------------------------------------------------- internal sealed class ColumnPropertiesGroup { // ------------------------------------------------------------------ // Constructor. // Remarks - the pageWidth parameter can be used to limit column // properties if the element is a FlowDocument. // ----------------------------------------------------------------- internal ColumnPropertiesGroup(DependencyObject o) { _columnWidth = (double)o.GetValue(FlowDocument.ColumnWidthProperty); _columnGap = (double)o.GetValue(FlowDocument.ColumnGapProperty); _columnRuleWidth = (double)o.GetValue(FlowDocument.ColumnRuleWidthProperty); _columnRuleBrush = (Brush)o.GetValue(FlowDocument.ColumnRuleBrushProperty); _isColumnWidthFlexible = (bool)o.GetValue(FlowDocument.IsColumnWidthFlexibleProperty); } // ------------------------------------------------------------------ // Column width. // ------------------------------------------------------------------ internal double ColumnWidth { get { Debug.Assert(!double.IsNaN(_columnWidth)); return _columnWidth; } } private double _columnWidth; // ----------------------------------------------------------------- // Flexible column width. // ------------------------------------------------------------------ internal bool IsColumnWidthFlexible { get { return _isColumnWidthFlexible; } } private bool _isColumnWidthFlexible; // ----------------------------------------------------------------- // Column space distribution. // ----------------------------------------------------------------- internal ColumnSpaceDistribution ColumnSpaceDistribution { get { return ColumnSpaceDistribution.Between; } } // ----------------------------------------------------------------- // Column gap. // ------------------------------------------------------------------ internal double ColumnGap { get { Invariant.Assert(!double.IsNaN(_columnGap)); return _columnGap; } } private double _columnGap; // ----------------------------------------------------------------- // Column rule brush. // ------------------------------------------------------------------ internal Brush ColumnRuleBrush { get { return _columnRuleBrush; } } private Brush _columnRuleBrush; // ------------------------------------------------------------------ // Column rule width. // ----------------------------------------------------------------- internal double ColumnRuleWidth { get { return _columnRuleWidth; } } private double _columnRuleWidth; // ------------------------------------------------------------------ // Column width is set? // ----------------------------------------------------------------- internal bool ColumnWidthAuto { get { return DoubleUtil.IsNaN(_columnWidth); } } // ----------------------------------------------------------------- // Column gap is set? // ----------------------------------------------------------------- internal bool ColumnGapAuto { get { return DoubleUtil.IsNaN(_columnGap); } } } } // 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. // // File: ColumnPropertiesGroup.cs // // Description: Column properties group. // // History: // 05/05/2003 : [....] - created. // 07/18/2003 : [....] - converted to new Property Engine. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using System.Windows; using System.Windows.Media; using System.Windows.Documents; using MS.Internal.Text; namespace MS.Internal.PtsHost { // --------------------------------------------------------------------- // Column properties group. // --------------------------------------------------------------------- internal sealed class ColumnPropertiesGroup { // ------------------------------------------------------------------ // Constructor. // Remarks - the pageWidth parameter can be used to limit column // properties if the element is a FlowDocument. // ----------------------------------------------------------------- internal ColumnPropertiesGroup(DependencyObject o) { _columnWidth = (double)o.GetValue(FlowDocument.ColumnWidthProperty); _columnGap = (double)o.GetValue(FlowDocument.ColumnGapProperty); _columnRuleWidth = (double)o.GetValue(FlowDocument.ColumnRuleWidthProperty); _columnRuleBrush = (Brush)o.GetValue(FlowDocument.ColumnRuleBrushProperty); _isColumnWidthFlexible = (bool)o.GetValue(FlowDocument.IsColumnWidthFlexibleProperty); } // ------------------------------------------------------------------ // Column width. // ------------------------------------------------------------------ internal double ColumnWidth { get { Debug.Assert(!double.IsNaN(_columnWidth)); return _columnWidth; } } private double _columnWidth; // ----------------------------------------------------------------- // Flexible column width. // ------------------------------------------------------------------ internal bool IsColumnWidthFlexible { get { return _isColumnWidthFlexible; } } private bool _isColumnWidthFlexible; // ----------------------------------------------------------------- // Column space distribution. // ----------------------------------------------------------------- internal ColumnSpaceDistribution ColumnSpaceDistribution { get { return ColumnSpaceDistribution.Between; } } // ----------------------------------------------------------------- // Column gap. // ------------------------------------------------------------------ internal double ColumnGap { get { Invariant.Assert(!double.IsNaN(_columnGap)); return _columnGap; } } private double _columnGap; // ----------------------------------------------------------------- // Column rule brush. // ------------------------------------------------------------------ internal Brush ColumnRuleBrush { get { return _columnRuleBrush; } } private Brush _columnRuleBrush; // ------------------------------------------------------------------ // Column rule width. // ----------------------------------------------------------------- internal double ColumnRuleWidth { get { return _columnRuleWidth; } } private double _columnRuleWidth; // ------------------------------------------------------------------ // Column width is set? // ----------------------------------------------------------------- internal bool ColumnWidthAuto { get { return DoubleUtil.IsNaN(_columnWidth); } } // ----------------------------------------------------------------- // Column gap is set? // ----------------------------------------------------------------- internal bool ColumnGapAuto { get { return DoubleUtil.IsNaN(_columnGap); } } } } // 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
- DataBoundControlActionList.cs
- CursorConverter.cs
- OleDbRowUpdatingEvent.cs
- NameNode.cs
- XmlNodeWriter.cs
- SecureEnvironment.cs
- DataPagerFieldCommandEventArgs.cs
- BorderGapMaskConverter.cs
- DataReceivedEventArgs.cs
- RoleManagerModule.cs
- GAC.cs
- WebPartMinimizeVerb.cs
- MatrixTransform.cs
- Message.cs
- WindowsImpersonationContext.cs
- KeyValueConfigurationCollection.cs
- HttpWriter.cs
- UniqueIdentifierService.cs
- OleDbTransaction.cs
- SmiEventSink.cs
- ProxyWebPart.cs
- ScriptingJsonSerializationSection.cs
- EventManager.cs
- PropertyEmitterBase.cs
- CapabilitiesPattern.cs
- VisualStyleTypesAndProperties.cs
- AssemblyFilter.cs
- GenericsInstances.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- cookiecontainer.cs
- HtmlElementErrorEventArgs.cs
- ResourceCategoryAttribute.cs
- DodSequenceMerge.cs
- ToolStripLabel.cs
- SystemInfo.cs
- ToggleButtonAutomationPeer.cs
- Evaluator.cs
- ConstNode.cs
- TraceInternal.cs
- ParallelTimeline.cs
- DataGridViewCellValueEventArgs.cs
- ToolStripOverflowButton.cs
- Pointer.cs
- DbProviderFactories.cs
- Point3DCollection.cs
- DocumentSequenceHighlightLayer.cs
- PhysicalFontFamily.cs
- IQueryable.cs
- EmptyEnumerator.cs
- HttpStreamXmlDictionaryReader.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- SqlUtil.cs
- SerialPort.cs
- ToolStripDropDownItemDesigner.cs
- BoundField.cs
- ScriptingSectionGroup.cs
- StorageBasedPackageProperties.cs
- ComplexBindingPropertiesAttribute.cs
- InkSerializer.cs
- XPathParser.cs
- MultiByteCodec.cs
- XmlObjectSerializerReadContext.cs
- ElapsedEventArgs.cs
- ProxyWebPart.cs
- DesignerAttributeInfo.cs
- CompilationLock.cs
- DocumentViewerBase.cs
- Serializer.cs
- ConstantSlot.cs
- NamedPermissionSet.cs
- Utils.cs
- DetailsView.cs
- ContainerUIElement3D.cs
- XmlSchemaAttributeGroupRef.cs
- SequentialWorkflowHeaderFooter.cs
- TabletDevice.cs
- InputReportEventArgs.cs
- FormViewAutoFormat.cs
- SelectionRangeConverter.cs
- EraserBehavior.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- PrintDialog.cs
- SemaphoreSecurity.cs
- PersonalizableTypeEntry.cs
- SmiSettersStream.cs
- CalendarDateChangedEventArgs.cs
- Quaternion.cs
- TransformDescriptor.cs
- QilChoice.cs
- Color.cs
- UriTemplateDispatchFormatter.cs
- SerializationSectionGroup.cs
- Rect3D.cs
- RangeBaseAutomationPeer.cs
- DataContext.cs
- RoutedEventConverter.cs
- ReadOnlyDictionary.cs
- ChangePasswordDesigner.cs
- ShaderRenderModeValidation.cs
- TrackingWorkflowEventArgs.cs