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
- FilterableAttribute.cs
- WindowsTab.cs
- QueryExtender.cs
- RangeValuePattern.cs
- NavigationPropertyAccessor.cs
- NoneExcludedImageIndexConverter.cs
- ContextStack.cs
- OdbcTransaction.cs
- XamlToRtfParser.cs
- CurrencyManager.cs
- HierarchicalDataSourceControl.cs
- DoubleKeyFrameCollection.cs
- DataListItemCollection.cs
- WebPageTraceListener.cs
- BufferModeSettings.cs
- NetworkInformationException.cs
- CodeVariableReferenceExpression.cs
- FontDriver.cs
- Panel.cs
- TableColumn.cs
- ProviderConnectionPointCollection.cs
- HopperCache.cs
- DrawListViewSubItemEventArgs.cs
- WmlLabelAdapter.cs
- FullTextBreakpoint.cs
- RawAppCommandInputReport.cs
- CheckBoxFlatAdapter.cs
- HttpConfigurationContext.cs
- TargetInvocationException.cs
- EventTrigger.cs
- VirtualPath.cs
- ToolStripItemTextRenderEventArgs.cs
- DoubleMinMaxAggregationOperator.cs
- UpdateRecord.cs
- TextDecorationUnitValidation.cs
- WebPartZoneBase.cs
- RemotingConfiguration.cs
- FieldBuilder.cs
- StringUtil.cs
- DeviceSpecificChoiceCollection.cs
- CodeTypeDeclarationCollection.cs
- SchemaNotation.cs
- AnnotationHighlightLayer.cs
- WindowsStartMenu.cs
- Figure.cs
- QuinticEase.cs
- MimeWriter.cs
- SessionState.cs
- LinqDataSourceView.cs
- IdentityElement.cs
- AnnotationMap.cs
- PhysicalOps.cs
- TraceHandlerErrorFormatter.cs
- ValidationContext.cs
- GeometryCollection.cs
- EventData.cs
- HandleScope.cs
- TypeToStringValueConverter.cs
- LightweightEntityWrapper.cs
- FormViewUpdateEventArgs.cs
- OracleException.cs
- WebPartTransformerCollection.cs
- RawStylusInputCustomDataList.cs
- MbpInfo.cs
- EnumMember.cs
- AuthenticatingEventArgs.cs
- CollectionConverter.cs
- SpeechUI.cs
- WmpBitmapDecoder.cs
- PlainXmlSerializer.cs
- PrintingPermission.cs
- GridPattern.cs
- __Filters.cs
- SiteMap.cs
- RowSpanVector.cs
- Visitors.cs
- FeatureSupport.cs
- WebPartConnectionsDisconnectVerb.cs
- BaseParaClient.cs
- CompModSwitches.cs
- SecurityUtils.cs
- XmlSchemaComplexContent.cs
- EditorAttribute.cs
- BinaryKeyIdentifierClause.cs
- InvalidPropValue.cs
- DefaultValueConverter.cs
- Matrix3D.cs
- TableCell.cs
- SmiMetaDataProperty.cs
- PasswordPropertyTextAttribute.cs
- SByteConverter.cs
- FormattedText.cs
- MultilineStringEditor.cs
- DynamicActivityTypeDescriptor.cs
- LicenseException.cs
- ExpandableObjectConverter.cs
- Double.cs
- WindowsFormsSectionHandler.cs
- DesignerObjectListAdapter.cs
- Symbol.cs