Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Core.Presentation / System / Activities / Core / Presentation / CatchDesigner.xaml.cs / 1305376 / CatchDesigner.xaml.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Core.Presentation { using System; using System.Activities; using System.Activities.Presentation; using System.Activities.Presentation.View; using System.Activities.Presentation.Metadata; using System.Activities.Presentation.Model; using System.Activities.Statements; using System.ComponentModel; using System.Diagnostics; using System.Runtime; using System.Windows; using System.Windows.Input; ////// Interaction logic for CatchDesigner.xaml /// partial class CatchDesigner { string exceptionTypeShortName = null; string exceptionTypeFullName = null; public CatchDesigner() { InitializeComponent(); this.Loaded += (sender, e) => { Selection selection = this.Context.Items.GetValue(); if (selection != null) { ModelItem primarySelection = selection.PrimarySelection; this.ExpandState = TryCatchDesigner.IsDescendantOfCatch(this.ModelItem, primarySelection); if (this.ExpandState) { // If current focus is at another part, we need to focus this designer // to trigger selection changed, then this part will expand and another // expanded part will collapse. Then we focus on the activity it contains // if there is one. Keyboard.Focus((IInputElement)this.ModelItem.View); if (primarySelection.View != null && this.ModelItem != primarySelection) { Keyboard.Focus((IInputElement)primarySelection.View); } } } }; } internal static void RegisterMetadata(AttributeTableBuilder builder) { Type type = typeof(Catch<>); builder.AddCustomAttributes(type, new DesignerAttribute(typeof(CatchDesigner))); builder.AddCustomAttributes(type, type.GetProperty("Action"), BrowsableAttribute.No); builder.AddCustomAttributes(type, new ActivityDesignerOptionsAttribute { AllowDrillIn = false }); } public string ExceptionTypeShortName { get { if (this.exceptionTypeShortName == null) { this.exceptionTypeShortName = TypeNameHelper.GetDisplayName((Type)this.ModelItem.Properties["ExceptionType"].Value.GetCurrentValue(), false); } return this.exceptionTypeShortName; } } public string ExceptionTypeFullName { get { if (this.exceptionTypeFullName == null) { this.exceptionTypeFullName = TypeNameHelper.GetDisplayName((Type)this.ModelItem.Properties["ExceptionType"].Value.GetCurrentValue(), true); } return this.exceptionTypeFullName; } } protected override void OnMouseDown(MouseButtonEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed && e.ClickCount == 2) { SwitchTryCatchDesignerHelper.MakeParentRootDesigner (this); e.Handled = true; } else if (e.LeftButton == MouseButtonState.Pressed) { Keyboard.Focus(this); e.Handled = true; } else if (e.RightButton == MouseButtonState.Pressed) { if (this.ShowExpanded) { Keyboard.Focus(this); } e.Handled = true; } } protected override void OnMouseUp(MouseButtonEventArgs e) { // avoid context menu upon right-click when it's collapsed if (!this.ShowExpanded && e.RightButton == MouseButtonState.Released) { e.Handled = true; } } protected override string GetAutomationIdMemberName() { return PropertyNames.ExceptionType; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Evaluator.cs
- NoneExcludedImageIndexConverter.cs
- ErrorFormatter.cs
- ToolStripDropDownClosedEventArgs.cs
- CustomLineCap.cs
- FontFaceLayoutInfo.cs
- WebResourceUtil.cs
- EnterpriseServicesHelper.cs
- BamlResourceContent.cs
- Thread.cs
- FontCacheUtil.cs
- SelectionBorderGlyph.cs
- dbdatarecord.cs
- BorderGapMaskConverter.cs
- Single.cs
- SequentialUshortCollection.cs
- ConditionChanges.cs
- CommonXSendMessage.cs
- TreePrinter.cs
- DrawingImage.cs
- WaitHandleCannotBeOpenedException.cs
- StylusPointPropertyInfo.cs
- HebrewNumber.cs
- AttributeData.cs
- Vertex.cs
- CurrencyManager.cs
- LessThan.cs
- RadioButton.cs
- EncryptedPackageFilter.cs
- SimpleApplicationHost.cs
- Message.cs
- EditorPartCollection.cs
- ListControlStringCollectionEditor.cs
- EntityTransaction.cs
- Unit.cs
- smtpconnection.cs
- DataControlLinkButton.cs
- EmbeddedMailObject.cs
- ISAPIRuntime.cs
- AsyncSerializedWorker.cs
- XmlAnyElementAttribute.cs
- DesignerActionUI.cs
- PasswordBoxAutomationPeer.cs
- UpdatePanelTrigger.cs
- SessionEndedEventArgs.cs
- NavigatingCancelEventArgs.cs
- COM2ExtendedTypeConverter.cs
- NativeMethods.cs
- InProcStateClientManager.cs
- SqlDataReaderSmi.cs
- BmpBitmapEncoder.cs
- FrameworkContentElement.cs
- GenericsInstances.cs
- _AutoWebProxyScriptEngine.cs
- CompositeScriptReference.cs
- DeclarativeExpressionConditionDeclaration.cs
- SchemaTypeEmitter.cs
- ObjectDataSourceEventArgs.cs
- XmlDataSourceView.cs
- OleDbWrapper.cs
- SqlEnums.cs
- InkCanvas.cs
- ValidatorCompatibilityHelper.cs
- ByteStack.cs
- _OverlappedAsyncResult.cs
- SmtpNtlmAuthenticationModule.cs
- MarkerProperties.cs
- StateManagedCollection.cs
- DataGridViewSelectedColumnCollection.cs
- DoubleAnimationClockResource.cs
- CellIdBoolean.cs
- XmlAttributeCache.cs
- SqlStatistics.cs
- _ProxyRegBlob.cs
- StaticResourceExtension.cs
- AutomationTextAttribute.cs
- InputProcessorProfiles.cs
- TrackingMemoryStream.cs
- RtfNavigator.cs
- RegexCaptureCollection.cs
- DataGridItemEventArgs.cs
- UntrustedRecipientException.cs
- RequestCachePolicyConverter.cs
- SecurityContext.cs
- RegistryKey.cs
- GraphicsState.cs
- Attachment.cs
- ImageList.cs
- AutomationElementCollection.cs
- BindingsCollection.cs
- LayoutEngine.cs
- ScrollItemPattern.cs
- CustomCategoryAttribute.cs
- MetadataArtifactLoaderComposite.cs
- securitymgrsite.cs
- EnterpriseServicesHelper.cs
- HierarchicalDataSourceControl.cs
- BitmapScalingModeValidation.cs
- TextEmbeddedObject.cs
- TrackingExtract.cs