Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Core.Presentation / System / Activities / Core / Presentation / WorkflowShape.cs / 1305376 / WorkflowShape.cs
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Controls; using System.Windows; using System.Windows.Input; namespace System.Activities.Core.Presentation { //Deriving from label to avoid implementing automation peer. class WorkflowShape : Label { bool isMouseDown = false; Point lastMouseDownPoint; public const double dragStartThreshold = 5; public const string WorkflowShapeFormat = "WorkflowShapeFormat"; protected override void OnMouseDown(System.Windows.Input.MouseButtonEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed) { isMouseDown = true; lastMouseDownPoint = e.GetPosition(this); e.Handled = true; } base.OnMouseDown(e); } protected override void OnMouseUp(System.Windows.Input.MouseButtonEventArgs e) { isMouseDown = false; e.Handled = true; base.OnMouseUp(e); } protected override void OnMouseMove(System.Windows.Input.MouseEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed && isMouseDown) { Point newPosition = e.GetPosition(this); Vector difference = newPosition - lastMouseDownPoint; if (difference.Length >= dragStartThreshold) { //DoDragDrop; DataObject dataObject = new DataObject(WorkflowShapeFormat, this); DragDrop.DoDragDrop(this, dataObject, DragDropEffects.Move | DragDropEffects.Copy | DragDropEffects.Scroll | DragDropEffects.Link); isMouseDown = false; e.Handled = true; } } base.OnMouseMove(e); } } } // 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
- SapiRecoInterop.cs
- UnauthorizedAccessException.cs
- AdornerLayer.cs
- ImageAutomationPeer.cs
- TemplateInstanceAttribute.cs
- WebPartConnectionsConnectVerb.cs
- PeerContact.cs
- WebPartsPersonalization.cs
- Screen.cs
- EntityTypeBase.cs
- ReadWriteSpinLock.cs
- ProxyWebPartConnectionCollection.cs
- DataColumnMappingCollection.cs
- ProjectionPath.cs
- ProfileSettings.cs
- securestring.cs
- Attachment.cs
- ComEventsInfo.cs
- ColorKeyFrameCollection.cs
- VisualBrush.cs
- BamlVersionHeader.cs
- PageVisual.cs
- XamlTreeBuilder.cs
- EventDescriptor.cs
- ControlCachePolicy.cs
- RSAOAEPKeyExchangeFormatter.cs
- TextTreeTextElementNode.cs
- GlyphRun.cs
- PathSegment.cs
- ReflectPropertyDescriptor.cs
- VirtualPathProvider.cs
- ErrorFormatterPage.cs
- ImageInfo.cs
- VectorCollectionValueSerializer.cs
- ApplicationServicesHostFactory.cs
- NetworkStream.cs
- ToolBarButton.cs
- RuleSettingsCollection.cs
- PassportIdentity.cs
- ProofTokenCryptoHandle.cs
- Constants.cs
- SendKeys.cs
- EventNotify.cs
- PropertyFilterAttribute.cs
- FormViewInsertedEventArgs.cs
- XsltLibrary.cs
- PeerNodeAddress.cs
- Icon.cs
- StateMachineWorkflowInstance.cs
- ContextMenuStripGroup.cs
- LookupTables.cs
- InsufficientMemoryException.cs
- Symbol.cs
- QilSortKey.cs
- ContractAdapter.cs
- Operator.cs
- LinqDataSource.cs
- Win32SafeHandles.cs
- sqlinternaltransaction.cs
- sortedlist.cs
- ConnectivityStatus.cs
- ConfigurationUtility.cs
- RenderContext.cs
- XmlSchemaSubstitutionGroup.cs
- TableLayoutStyle.cs
- OracleEncoding.cs
- SizeLimitedCache.cs
- ForeignKeyConstraint.cs
- _HeaderInfo.cs
- Point3DIndependentAnimationStorage.cs
- CrossSiteScriptingValidation.cs
- RichTextBox.cs
- WebPartEditVerb.cs
- IndicFontClient.cs
- BitmapData.cs
- DecoratedNameAttribute.cs
- NativeMethods.cs
- XmlHierarchyData.cs
- WrapPanel.cs
- GiveFeedbackEvent.cs
- ClientBuildManager.cs
- InvalidDataException.cs
- IResourceProvider.cs
- ContractReference.cs
- TextParaClient.cs
- RowUpdatedEventArgs.cs
- IconConverter.cs
- AppDomainUnloadedException.cs
- figurelength.cs
- IdentityReference.cs
- DropShadowBitmapEffect.cs
- CatalogPartCollection.cs
- DataControlImageButton.cs
- MarkerProperties.cs
- ExpandCollapsePattern.cs
- ConfigurationValidatorAttribute.cs
- CallbackHandler.cs
- CodeMemberField.cs
- Oid.cs
- ToolboxItemSnapLineBehavior.cs