Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Shapes / Line.cs / 1305600 / Line.cs
//---------------------------------------------------------------------------- // File: Line.cs // // Description: // Implementation of Line shape element. // // History: // 05/30/02 - [....] - Created. // // Copyright (C) 2003 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System.Windows.Shapes; using System.Diagnostics; using System.Windows.Threading; using System.Windows; using System.Windows.Media; using System.ComponentModel; using MS.Internal; using System; namespace System.Windows.Shapes { ////// The line shape element /// This element (like all shapes) belongs under a Canvas, /// and will be presented by the parent canvas. /// public sealed class Line : Shape { #region Constructors ////// Instantiates a new instance of a line. /// public Line() { } #endregion Constructors #region Dynamic Properties ////// X1 property /// public static readonly DependencyProperty X1Property = DependencyProperty.Register( "X1", typeof(double), typeof(Line), new FrameworkPropertyMetadata(0d, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender), new ValidateValueCallback(Shape.IsDoubleFinite)); ////// X1 property /// [TypeConverter(typeof(LengthConverter))] public double X1 { get { return (double)GetValue(X1Property); } set { SetValue(X1Property, value); } } ////// Y1 property /// public static readonly DependencyProperty Y1Property = DependencyProperty.Register( "Y1", typeof(double), typeof(Line), new FrameworkPropertyMetadata(0d, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender), new ValidateValueCallback(Shape.IsDoubleFinite)); ////// Y1 property /// [TypeConverter(typeof(LengthConverter))] public double Y1 { get { return (double)GetValue(Y1Property); } set { SetValue(Y1Property, value); } } ////// X2 property /// public static readonly DependencyProperty X2Property = DependencyProperty.Register( "X2", typeof(double), typeof(Line), new FrameworkPropertyMetadata(0d, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender), new ValidateValueCallback(Shape.IsDoubleFinite)); ////// X2 property /// [TypeConverter(typeof(LengthConverter))] public double X2 { get { return (double)GetValue(X2Property); } set { SetValue(X2Property, value); } } ////// Y2 property /// public static readonly DependencyProperty Y2Property = DependencyProperty.Register( "Y2", typeof(double), typeof(Line), new FrameworkPropertyMetadata(0d, FrameworkPropertyMetadataOptions.AffectsMeasure | FrameworkPropertyMetadataOptions.AffectsRender), new ValidateValueCallback(Shape.IsDoubleFinite)); ////// Y2 property /// [TypeConverter(typeof(LengthConverter))] public double Y2 { get { return (double)GetValue(Y2Property); } set { SetValue(Y2Property, value); } } #endregion Dynamic Properties #region Protected Methods and Properties ////// Get the line that defines this shape /// protected override Geometry DefiningGeometry { get { return _lineGeometry; } } #endregion #region Internal Methods internal override void CacheDefiningGeometry() { Point point1 = new Point(X1, Y1); Point point2 = new Point(X2, Y2); // Create the Line geometry _lineGeometry = new LineGeometry(point1, point2); } #endregion Internal Methods #region Private Methods and Members private LineGeometry _lineGeometry; #endregion } } // 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
- BlurEffect.cs
- EmptyEnumerator.cs
- _emptywebproxy.cs
- ChildTable.cs
- ProtocolImporter.cs
- ImageSourceConverter.cs
- Subtree.cs
- Matrix3D.cs
- SchemaExporter.cs
- StatusBarItemAutomationPeer.cs
- XmlParser.cs
- FixUp.cs
- Choices.cs
- GridViewRowPresenterBase.cs
- TextSegment.cs
- NavigationService.cs
- DynamicPropertyHolder.cs
- PassportPrincipal.cs
- SystemResourceHost.cs
- NavigationFailedEventArgs.cs
- Table.cs
- SafeLibraryHandle.cs
- PartialCachingControl.cs
- Line.cs
- ContextDataSourceView.cs
- URL.cs
- InvalidCastException.cs
- SqlMethods.cs
- DispatchChannelSink.cs
- HTTPNotFoundHandler.cs
- PermissionSetEnumerator.cs
- Win32PrintDialog.cs
- AttributeCollection.cs
- TcpAppDomainProtocolHandler.cs
- DataGridViewCellStateChangedEventArgs.cs
- AnonymousIdentificationModule.cs
- XmlFormatWriterGenerator.cs
- PathFigureCollectionConverter.cs
- TextPointerBase.cs
- BufferModesCollection.cs
- ImageCodecInfo.cs
- behaviorssection.cs
- DeclarationUpdate.cs
- DataBindingList.cs
- BamlMapTable.cs
- DataBindingCollectionConverter.cs
- EncoderNLS.cs
- DirectoryGroupQuery.cs
- FunctionDescription.cs
- FormViewUpdateEventArgs.cs
- remotingproxy.cs
- MetaType.cs
- DbTransaction.cs
- DirectoryNotFoundException.cs
- DataGridParentRows.cs
- ToolStripDropTargetManager.cs
- XsdCachingReader.cs
- BitmapData.cs
- TextTreeTextNode.cs
- TransformerConfigurationWizardBase.cs
- Solver.cs
- MetricEntry.cs
- SqlUserDefinedTypeAttribute.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- XmlSchemaDocumentation.cs
- SqlClientMetaDataCollectionNames.cs
- ToolboxBitmapAttribute.cs
- RelationshipConstraintValidator.cs
- SyntaxCheck.cs
- StorageFunctionMapping.cs
- ListBindingConverter.cs
- SqlDataReaderSmi.cs
- PropertyGrid.cs
- TypedTableBase.cs
- Expressions.cs
- VectorCollectionConverter.cs
- ReachDocumentSequenceSerializer.cs
- AttributeQuery.cs
- UIElementAutomationPeer.cs
- VisualTreeHelper.cs
- Enlistment.cs
- AttachedPropertyMethodSelector.cs
- TableRowCollection.cs
- XmlSerializationReader.cs
- BinaryNode.cs
- CodeDomDecompiler.cs
- TagPrefixAttribute.cs
- RuntimeIdentifierPropertyAttribute.cs
- CheckBoxPopupAdapter.cs
- BindingMemberInfo.cs
- DataGridViewCellEventArgs.cs
- VisualStyleInformation.cs
- XpsSerializerWriter.cs
- FrameworkElementFactoryMarkupObject.cs
- SharedPersonalizationStateInfo.cs
- WorkflowView.cs
- AccessedThroughPropertyAttribute.cs
- SubtreeProcessor.cs
- EpmCustomContentSerializer.cs
- ListMarkerLine.cs