Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Shapes / Line.cs / 1 / 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
- ReachBasicContext.cs
- SchemaElementDecl.cs
- BitmapInitialize.cs
- SemaphoreFullException.cs
- ArrayMergeHelper.cs
- UnsafeNativeMethods.cs
- ViewManager.cs
- TraceHandlerErrorFormatter.cs
- InvalidDataContractException.cs
- BackStopAuthenticationModule.cs
- UserInitiatedNavigationPermission.cs
- PeerCollaborationPermission.cs
- WebServiceHandler.cs
- DebugView.cs
- WebPartVerbCollection.cs
- PermissionSetTriple.cs
- BigInt.cs
- BaseCAMarshaler.cs
- BrowserDefinitionCollection.cs
- RichTextBox.cs
- ApplicationProxyInternal.cs
- Brushes.cs
- IconEditor.cs
- ProfileModule.cs
- UserControlCodeDomTreeGenerator.cs
- BezierSegment.cs
- AddInDeploymentState.cs
- XmlILOptimizerVisitor.cs
- COM2ComponentEditor.cs
- PersonalizationDictionary.cs
- XmlSchemaComplexContentExtension.cs
- ContextMenuService.cs
- CounterSet.cs
- XmlElementList.cs
- ProtectedConfigurationSection.cs
- RuleSettings.cs
- EndpointConfigContainer.cs
- EvidenceBase.cs
- ConstrainedDataObject.cs
- SchemaMerger.cs
- SelectionChangedEventArgs.cs
- ComplexTypeEmitter.cs
- ExpressionBuilder.cs
- RijndaelManagedTransform.cs
- LogicalMethodInfo.cs
- Int32AnimationUsingKeyFrames.cs
- FilteredReadOnlyMetadataCollection.cs
- BitConverter.cs
- GPRECT.cs
- Comparer.cs
- InfoCardAsymmetricCrypto.cs
- Rect.cs
- Int16.cs
- ClusterRegistryConfigurationProvider.cs
- ResXFileRef.cs
- ChunkedMemoryStream.cs
- DrawingGroup.cs
- GatewayDefinition.cs
- XPathParser.cs
- GridToolTip.cs
- QuarticEase.cs
- Compiler.cs
- CounterCreationDataConverter.cs
- UpdateProgress.cs
- ProgressiveCrcCalculatingStream.cs
- FixedPageProcessor.cs
- WebBrowserNavigatingEventHandler.cs
- RootProfilePropertySettingsCollection.cs
- CompModHelpers.cs
- CAGDesigner.cs
- MarkupProperty.cs
- UnknownWrapper.cs
- DBPropSet.cs
- EventRoute.cs
- _UriSyntax.cs
- HttpFormatExtensions.cs
- WebConvert.cs
- RegexMatch.cs
- NGCPageContentSerializerAsync.cs
- RequestQueryParser.cs
- BrushConverter.cs
- SQlBooleanStorage.cs
- Point3DCollection.cs
- XmlNodeChangedEventManager.cs
- CommandField.cs
- AppLevelCompilationSectionCache.cs
- DataGridViewCellValueEventArgs.cs
- TcpAppDomainProtocolHandler.cs
- TextParagraphCache.cs
- TableItemPattern.cs
- DbProviderSpecificTypePropertyAttribute.cs
- DtrList.cs
- ObjectStateManagerMetadata.cs
- CodeIdentifiers.cs
- SecureEnvironment.cs
- RemotingConfigParser.cs
- WebPartRestoreVerb.cs
- SurrogateChar.cs
- ProcessModuleCollection.cs
- Emitter.cs