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
- TextPattern.cs
- EnvelopedPkcs7.cs
- SelectionBorderGlyph.cs
- ContractsBCL.cs
- DataBoundControlHelper.cs
- ObjectStateEntryOriginalDbUpdatableDataRecord.cs
- TreeViewCancelEvent.cs
- User.cs
- ColumnWidthChangedEvent.cs
- PolygonHotSpot.cs
- CompilerError.cs
- SHA512Managed.cs
- SecUtil.cs
- CommandEventArgs.cs
- ClientScriptManagerWrapper.cs
- AudioStateChangedEventArgs.cs
- SystemIPGlobalStatistics.cs
- SymbolTable.cs
- GenerateHelper.cs
- CqlQuery.cs
- AnchoredBlock.cs
- base64Transforms.cs
- MetadataItemSerializer.cs
- FormattedText.cs
- URL.cs
- LocatorPart.cs
- SqlDataReaderSmi.cs
- StylusDownEventArgs.cs
- Pkcs7Recipient.cs
- GenericAuthenticationEventArgs.cs
- XmlBinaryReader.cs
- util.cs
- SqlInternalConnection.cs
- Ipv6Element.cs
- Visual3D.cs
- BackStopAuthenticationModule.cs
- BulletChrome.cs
- ExtensionSurface.cs
- SQLResource.cs
- Bind.cs
- CanExecuteRoutedEventArgs.cs
- RotationValidation.cs
- KoreanLunisolarCalendar.cs
- DateTimeOffsetStorage.cs
- SqlUDTStorage.cs
- MenuItemStyle.cs
- AssemblyCache.cs
- CompoundFileReference.cs
- ButtonBaseAutomationPeer.cs
- GenericTypeParameterBuilder.cs
- CallbackWrapper.cs
- CodeDomComponentSerializationService.cs
- LogStream.cs
- Baml6ConstructorInfo.cs
- VisualStateGroup.cs
- FilteredDataSetHelper.cs
- DispatchChannelSink.cs
- NamedPermissionSet.cs
- _DynamicWinsockMethods.cs
- SpeechDetectedEventArgs.cs
- ProfilePropertySettings.cs
- SqlDelegatedTransaction.cs
- AvTraceDetails.cs
- InternalConfigSettingsFactory.cs
- WindowsListView.cs
- RIPEMD160Managed.cs
- Variant.cs
- ListDictionary.cs
- ScrollProperties.cs
- ClientBuildManager.cs
- GraphicsPathIterator.cs
- ConfigXmlSignificantWhitespace.cs
- XmlDictionaryReaderQuotas.cs
- UnsafeNativeMethods.cs
- DataTrigger.cs
- Lease.cs
- OwnerDrawPropertyBag.cs
- CornerRadius.cs
- Parsers.cs
- TextPointer.cs
- PiiTraceSource.cs
- ServerValidateEventArgs.cs
- TemplateBaseAction.cs
- MetadataArtifactLoaderFile.cs
- DoubleAnimationBase.cs
- CultureInfoConverter.cs
- cryptoapiTransform.cs
- CompoundFileDeflateTransform.cs
- ParseNumbers.cs
- ManagementInstaller.cs
- DateTimeOffset.cs
- SchemaSetCompiler.cs
- FormsAuthenticationTicket.cs
- SafeNativeMethods.cs
- ToolStripPanelCell.cs
- GPPOINTF.cs
- ToolStripAdornerWindowService.cs
- TextSegment.cs
- ProviderSettingsCollection.cs
- TextureBrush.cs