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
- ArgumentDirectionHelper.cs
- Synchronization.cs
- PreloadedPackages.cs
- XhtmlBasicObjectListAdapter.cs
- PeekCompletedEventArgs.cs
- HtmlTable.cs
- XmlProcessingInstruction.cs
- AuthenticatingEventArgs.cs
- COM2EnumConverter.cs
- SamlAssertionKeyIdentifierClause.cs
- ObjectSet.cs
- filewebrequest.cs
- DataGridViewCellEventArgs.cs
- PeerCredentialElement.cs
- SeverityFilter.cs
- DebugTrace.cs
- XmlEncoding.cs
- HostProtectionException.cs
- OracleParameterBinding.cs
- DataSourceConverter.cs
- BitmapDecoder.cs
- ValueCollectionParameterReader.cs
- __FastResourceComparer.cs
- ThemeableAttribute.cs
- SystemGatewayIPAddressInformation.cs
- IUnknownConstantAttribute.cs
- InvokePattern.cs
- XmlSchemaFacet.cs
- PropertyValueUIItem.cs
- AlignmentYValidation.cs
- TableLayoutStyle.cs
- ToolStripSplitButton.cs
- MenuItemBindingCollection.cs
- TiffBitmapDecoder.cs
- ActionFrame.cs
- EventData.cs
- EventWaitHandle.cs
- SafePointer.cs
- ObjectDataSourceDisposingEventArgs.cs
- EntityDataSourceColumn.cs
- AuthenticateEventArgs.cs
- SecurityListenerSettingsLifetimeManager.cs
- CacheDependency.cs
- GeometryModel3D.cs
- Region.cs
- HandlerWithFactory.cs
- OdbcConnectionHandle.cs
- BaseValidatorDesigner.cs
- DataRecordInternal.cs
- RegexMatchCollection.cs
- TargetPerspective.cs
- DisplayNameAttribute.cs
- ColorKeyFrameCollection.cs
- HttpResponse.cs
- XmlSchemaRedefine.cs
- BitmapEffectInputData.cs
- RawKeyboardInputReport.cs
- ProcessThreadDesigner.cs
- TypeToken.cs
- NotFiniteNumberException.cs
- RolePrincipal.cs
- XmlElementCollection.cs
- NumericExpr.cs
- Wildcard.cs
- XmlSchemaSimpleContentExtension.cs
- Renderer.cs
- MemberPath.cs
- CodeDelegateCreateExpression.cs
- CodeDefaultValueExpression.cs
- UidManager.cs
- VectorValueSerializer.cs
- WebPartRestoreVerb.cs
- XomlCompilerParameters.cs
- CellParagraph.cs
- RowCache.cs
- RowType.cs
- AssemblyBuilderData.cs
- MsmqSecureHashAlgorithm.cs
- UncommonField.cs
- MethodCallConverter.cs
- DetailsViewUpdatedEventArgs.cs
- CharConverter.cs
- Variable.cs
- TreePrinter.cs
- securitycriticaldataformultiplegetandset.cs
- ChildrenQuery.cs
- TextEditor.cs
- Vector3DKeyFrameCollection.cs
- AssemblyAttributes.cs
- TypedDataSetSchemaImporterExtension.cs
- OleDbException.cs
- ToolStripKeyboardHandlingService.cs
- WebServiceAttribute.cs
- ComplexTypeEmitter.cs
- ConfigurationManagerInternal.cs
- DeploymentSection.cs
- SQLDouble.cs
- RegistryPermission.cs
- SchemaImporterExtensionsSection.cs
- SpeechSynthesizer.cs