Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.WorkflowServices / System / Workflow / Activities / Design / ServiceContractDetailViewControl.cs / 1305376 / ServiceContractDetailViewControl.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Workflow.Activities.Design { using System; using System.ComponentModel; using System.Runtime; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; internal partial class ServiceContractDetailViewControl : ListItemViewControl { public ServiceContractDetailViewControl() { InitializeComponent(); } public override event EventHandler ItemChanged; public override void UpdateView() { ServiceContractListItem listItem = this.Item as ServiceContractListItem; Fx.Assert(listItem != null, "listItem needs to be a ServiceContractListItem"); contractNameTextBox.Text = listItem.Name; contractNameTextBox.Enabled = true; contractNameTextBox.ReadOnly = true; if (listItem.IsCustomContract) { this.contractNameTextBox.ReadOnly = false; this.contractNameTextBox.Validated += new EventHandler(contractNameTextBox_Validated); this.contractNameTextBox.Validating += new CancelEventHandler(contractNameTextBox_Validating); } base.UpdateView(); } void contractNameTextBox_Validated(object sender, EventArgs e) { ServiceContractListItem contractListItem = (ServiceContractListItem) this.Item; UpdateImplementingActivities(contractListItem); // finally notify other observers of this change if (this.ItemChanged != null) { this.ItemChanged.Invoke(this, null); } } void contractNameTextBox_Validating(object sender, CancelEventArgs e) { ServiceContractListItem contractListItem = (ServiceContractListItem) this.Item; string oldName = contractListItem.Name; contractListItem.Name = this.contractNameTextBox.Text; if (contractListItem.Validating != null) { contractListItem.Validating.Invoke(contractListItem, e); } if (e.Cancel) { this.contractNameTextBox.Text = oldName; contractListItem.Name = oldName; e.Cancel = false; } } private void UpdateImplementingActivities(ServiceContractListItem listItem) { foreach (WorkflowServiceOperationListItem workflowOperationListItem in listItem.Operations) { Fx.Assert(workflowOperationListItem != null, "Operations inside an editable contract should only be workflow first operations"); workflowOperationListItem.Operation.ContractName = listItem.Name; // update the activities implementing the operation too foreach (Activity activity in workflowOperationListItem.ImplementingActivities) { PropertyDescriptorUtils.SetPropertyValue(this.ServiceProvider, ServiceOperationHelpers.GetServiceOperationInfoPropertyDescriptor(activity), activity, workflowOperationListItem.Operation.Clone()); } } } } } // 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
- EventLogPermissionEntry.cs
- BitmapSourceSafeMILHandle.cs
- connectionpool.cs
- DependencyPropertyValueSerializer.cs
- BroadcastEventHelper.cs
- XslVisitor.cs
- ToolStripOverflowButton.cs
- SpeechEvent.cs
- parserscommon.cs
- GroupStyle.cs
- DisplayMemberTemplateSelector.cs
- AccessViolationException.cs
- InheritanceAttribute.cs
- FileNotFoundException.cs
- Object.cs
- InfiniteIntConverter.cs
- IDReferencePropertyAttribute.cs
- BaseCollection.cs
- EnumerableValidator.cs
- Section.cs
- XmlSchemaSimpleTypeRestriction.cs
- ValidationUtility.cs
- ButtonRenderer.cs
- RowVisual.cs
- PassportAuthenticationEventArgs.cs
- ColorMatrix.cs
- DataServiceHost.cs
- UserControlAutomationPeer.cs
- TypeDelegator.cs
- SoapIncludeAttribute.cs
- XamlReader.cs
- ValuePattern.cs
- VerticalAlignConverter.cs
- AppDomainProtocolHandler.cs
- namescope.cs
- SectionUpdates.cs
- EntityException.cs
- BaseValidatorDesigner.cs
- LicenseProviderAttribute.cs
- ELinqQueryState.cs
- HtmlInputPassword.cs
- SwitchExpression.cs
- ScopelessEnumAttribute.cs
- Wrapper.cs
- NativeMethods.cs
- ArcSegment.cs
- MailWriter.cs
- TraceSource.cs
- SizeFConverter.cs
- XmlSchemaType.cs
- SqlDependency.cs
- AsyncCodeActivityContext.cs
- TextTreeUndo.cs
- DictionaryManager.cs
- _NetworkingPerfCounters.cs
- UserControl.cs
- HMACMD5.cs
- AccessibleObject.cs
- UrlAuthorizationModule.cs
- XmlTextReader.cs
- HelpEvent.cs
- DataExpression.cs
- AppDomainEvidenceFactory.cs
- BulletedList.cs
- _SingleItemRequestCache.cs
- WebPartManagerInternals.cs
- TextLineResult.cs
- DataListItemCollection.cs
- WpfKnownMember.cs
- WeakRefEnumerator.cs
- ProcessHostFactoryHelper.cs
- httpserverutility.cs
- FontSizeConverter.cs
- Message.cs
- TextEditorCopyPaste.cs
- Quaternion.cs
- XmlNamespaceManager.cs
- ConfigurationElementProperty.cs
- DataGridViewRowPostPaintEventArgs.cs
- WebSysDescriptionAttribute.cs
- BitmapImage.cs
- XPathNavigatorReader.cs
- RuntimeConfigLKG.cs
- RulePatternOps.cs
- WSDualHttpBindingCollectionElement.cs
- KeyFrames.cs
- CalloutQueueItem.cs
- OleDbSchemaGuid.cs
- SwitchDesigner.xaml.cs
- GlobalizationSection.cs
- AdjustableArrowCap.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- WebPartTransformerCollection.cs
- KeyboardEventArgs.cs
- WizardStepCollectionEditor.cs
- DbBuffer.cs
- SetStoryboardSpeedRatio.cs
- VerificationAttribute.cs
- AutoGeneratedField.cs
- SelectionProcessor.cs