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
- JsonWriter.cs
- ValueSerializer.cs
- Button.cs
- VariantWrapper.cs
- WebServiceTypeData.cs
- FileChangesMonitor.cs
- DataBindingHandlerAttribute.cs
- ConditionalAttribute.cs
- Page.cs
- MdiWindowListItemConverter.cs
- Speller.cs
- VirtualPathData.cs
- RSAPKCS1KeyExchangeFormatter.cs
- HttpConfigurationSystem.cs
- sqlstateclientmanager.cs
- SID.cs
- SdlChannelSink.cs
- ProfileEventArgs.cs
- ConfigurationValidatorAttribute.cs
- Propagator.ExtentPlaceholderCreator.cs
- TextEditorTables.cs
- TextSelectionHelper.cs
- CodeNamespace.cs
- XmlSchemaAnnotation.cs
- SourceItem.cs
- SettingsAttributes.cs
- XmlILConstructAnalyzer.cs
- XmlDownloadManager.cs
- AnnotationAdorner.cs
- BaseResourcesBuildProvider.cs
- VScrollProperties.cs
- TransportChannelFactory.cs
- LightweightCodeGenerator.cs
- RepeaterItemEventArgs.cs
- OneOfConst.cs
- MouseOverProperty.cs
- SupportsEventValidationAttribute.cs
- XPathSelectionIterator.cs
- BooleanKeyFrameCollection.cs
- NetSectionGroup.cs
- Rect3DValueSerializer.cs
- DBBindings.cs
- SoapInteropTypes.cs
- PersonalizationDictionary.cs
- HttpContextServiceHost.cs
- HttpRawResponse.cs
- ProjectionPruner.cs
- SafeArrayTypeMismatchException.cs
- Utils.cs
- NameNode.cs
- DefaultWorkflowLoaderService.cs
- PointAnimationBase.cs
- SqlDataSourceView.cs
- FlatButtonAppearance.cs
- TypeGenericEnumerableViewSchema.cs
- TrackBarRenderer.cs
- TemplatedWizardStep.cs
- StreamSecurityUpgradeAcceptor.cs
- CommandHelpers.cs
- ShaderEffect.cs
- ClosableStream.cs
- AbstractDataSvcMapFileLoader.cs
- EUCJPEncoding.cs
- WebPartDisplayModeEventArgs.cs
- VerticalAlignConverter.cs
- Transform.cs
- SqlUnionizer.cs
- _BasicClient.cs
- OleDbStruct.cs
- DbParameterHelper.cs
- NavigationService.cs
- OdbcCommand.cs
- UInt32.cs
- TimersDescriptionAttribute.cs
- Avt.cs
- Int16AnimationUsingKeyFrames.cs
- PropertyChangeTracker.cs
- PropertyInformation.cs
- ViewLoader.cs
- UIElementPropertyUndoUnit.cs
- EmptyStringExpandableObjectConverter.cs
- KeyValueConfigurationElement.cs
- SchemaDeclBase.cs
- OleDbRowUpdatedEvent.cs
- ParserOptions.cs
- ToolStripArrowRenderEventArgs.cs
- DateTimeFormatInfoScanner.cs
- TextEndOfParagraph.cs
- TemplateNameScope.cs
- EntityCollection.cs
- MeshGeometry3D.cs
- XmlWhitespace.cs
- DataGridViewHeaderCell.cs
- OutputCacheModule.cs
- TableItemProviderWrapper.cs
- ContractDescription.cs
- SoapObjectReader.cs
- PeerCollaborationPermission.cs
- WebEncodingValidator.cs
- XmlSchemaCompilationSettings.cs