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
- FormsAuthentication.cs
- SqlConnectionHelper.cs
- HttpContext.cs
- XmlSchemaComplexContentExtension.cs
- TreeNodeBinding.cs
- XmlSchemaSimpleTypeUnion.cs
- HuffmanTree.cs
- CompatibleComparer.cs
- DuplicateDetector.cs
- RepeaterCommandEventArgs.cs
- NavigationProperty.cs
- DataGridViewCellPaintingEventArgs.cs
- PropertySourceInfo.cs
- GetIndexBinder.cs
- ContentAlignmentEditor.cs
- RuntimeEnvironment.cs
- UnsupportedPolicyOptionsException.cs
- versioninfo.cs
- DynamicRenderer.cs
- NamespaceTable.cs
- MailFileEditor.cs
- CalendarButton.cs
- ScriptRef.cs
- ChangeConflicts.cs
- CoTaskMemSafeHandle.cs
- SqlLiftWhereClauses.cs
- SqlBulkCopy.cs
- QilUnary.cs
- PublisherMembershipCondition.cs
- QuadraticBezierSegment.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- RoutedPropertyChangedEventArgs.cs
- ColorAnimation.cs
- OutputCacheProfile.cs
- NullableDoubleSumAggregationOperator.cs
- Crypto.cs
- DetailsViewUpdatedEventArgs.cs
- NetDispatcherFaultException.cs
- QilPatternFactory.cs
- OrCondition.cs
- ObjectReaderCompiler.cs
- WindowsStatic.cs
- SecureConversationDriver.cs
- TlsSspiNegotiation.cs
- MsmqAppDomainProtocolHandler.cs
- CookieParameter.cs
- CodeDelegateCreateExpression.cs
- ToggleButton.cs
- ToolStripItemBehavior.cs
- PrintEvent.cs
- AdCreatedEventArgs.cs
- Selector.cs
- ErrorWrapper.cs
- Image.cs
- BezierSegment.cs
- SectionXmlInfo.cs
- ProtocolsConfiguration.cs
- TimeoutException.cs
- EditorZoneBase.cs
- SqlIdentifier.cs
- UnaryExpression.cs
- DatePickerDateValidationErrorEventArgs.cs
- RenderingEventArgs.cs
- HtmlTableRowCollection.cs
- XmlValidatingReader.cs
- MimeObjectFactory.cs
- AlignmentXValidation.cs
- CngKey.cs
- safemediahandle.cs
- GetWinFXPath.cs
- WaitHandleCannotBeOpenedException.cs
- IdentityElement.cs
- LinqDataSourceDisposeEventArgs.cs
- Membership.cs
- _PooledStream.cs
- Normalizer.cs
- NativeRightsManagementAPIsStructures.cs
- Message.cs
- hresults.cs
- XmlNamespaceManager.cs
- AsyncResult.cs
- SqlNodeTypeOperators.cs
- PostBackOptions.cs
- RequiredFieldValidator.cs
- ScriptingRoleServiceSection.cs
- MatrixValueSerializer.cs
- RequestBringIntoViewEventArgs.cs
- IssuedTokenParametersEndpointAddressElement.cs
- Descriptor.cs
- WrappedReader.cs
- DataRowChangeEvent.cs
- KnownTypes.cs
- DesignTimeTemplateParser.cs
- WorkflowDesignerColors.cs
- COM2Properties.cs
- RunClient.cs
- CompilationUtil.cs
- IgnorePropertiesAttribute.cs
- DropShadowBitmapEffect.cs
- ReferentialConstraint.cs