Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Rules / Design / Dialogs / RenameRuleObjectDialog.cs / 1305376 / RenameRuleObjectDialog.cs
#region Using directives using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Globalization; using System.Text; using System.Windows.Forms; using System.Windows.Forms.Design; #endregion namespace System.Workflow.Activities.Rules.Design { internal partial class RenameRuleObjectDialog : Form { public delegate bool NameValidatorDelegate(string name); private string name; private IServiceProvider serviceProvider; private NameValidatorDelegate nameValidator; private BasicBrowserDialog parent; public RenameRuleObjectDialog(IServiceProvider serviceProvider, string oldName, NameValidatorDelegate nameValidator, BasicBrowserDialog parent) { if (oldName == null) throw (new ArgumentNullException("oldName")); if (serviceProvider == null) throw (new ArgumentNullException("serviceProvider")); if (nameValidator == null) throw (new ArgumentNullException("nameValidator")); this.serviceProvider = serviceProvider; this.name = oldName; this.nameValidator = nameValidator; this.parent = parent; InitializeComponent(); this.ruleNameTextBox.Text = oldName; this.Text = parent.RenameTitleText; this.newNamelabel.Text = parent.NewNameLabelText; this.Icon = null; //Set dialog fonts IUIService uisvc = (IUIService)this.serviceProvider.GetService(typeof(IUIService)); if (uisvc != null) this.Font = (Font)uisvc.Styles["DialogFont"]; } public string RuleObjectName { get { return this.name; } } private void OnCancel(object sender, EventArgs e) { this.DialogResult = DialogResult.Cancel; this.Close(); } private void OnOk(object sender, EventArgs e) { string newName = this.ruleNameTextBox.Text; if (newName.Trim().Length == 0) { string errorMessage = parent.EmptyNameErrorText; IUIService uisvc = (IUIService)this.serviceProvider.GetService(typeof(IUIService)); if (uisvc != null) uisvc.ShowError(errorMessage); else MessageBox.Show(errorMessage, Messages.InvalidConditionNameCaption, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, DetermineOptions(sender)); this.DialogResult = DialogResult.None; } else if (this.name != newName && !nameValidator(newName)) { string errorMessage = parent.DuplicateNameErrorText; IUIService uisvc = (IUIService)this.serviceProvider.GetService(typeof(IUIService)); if (uisvc != null) uisvc.ShowError(errorMessage); else MessageBox.Show(errorMessage, Messages.InvalidConditionNameCaption, MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, DetermineOptions(sender)); this.DialogResult = DialogResult.None; } else { this.name = newName; this.DialogResult = DialogResult.OK; this.Close(); } } private static MessageBoxOptions DetermineOptions(object sender) { MessageBoxOptions options = (MessageBoxOptions)0; Control someControl = sender as Control; RightToLeft rightToLeftValue = RightToLeft.Inherit; while ((rightToLeftValue == RightToLeft.Inherit) && (someControl != null)) { rightToLeftValue = someControl.RightToLeft; someControl = someControl.Parent; } if (rightToLeftValue == RightToLeft.Yes) { options = MessageBoxOptions.RtlReading | MessageBoxOptions.RightAlign; } return options; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LocalizeDesigner.cs
- MetadataException.cs
- Binding.cs
- DocumentViewerAutomationPeer.cs
- connectionpool.cs
- OptimalBreakSession.cs
- ComponentChangedEvent.cs
- ContentType.cs
- IdleTimeoutMonitor.cs
- Aes.cs
- JpegBitmapDecoder.cs
- HandlerFactoryCache.cs
- WebControlAdapter.cs
- BamlResourceDeserializer.cs
- TransformProviderWrapper.cs
- RenderContext.cs
- ShaderEffect.cs
- ListenerAdapterBase.cs
- ValidationUtility.cs
- Overlapped.cs
- AnnotationResourceChangedEventArgs.cs
- PenContext.cs
- ImageListUtils.cs
- RtfToXamlLexer.cs
- MenuRendererClassic.cs
- exports.cs
- PageThemeBuildProvider.cs
- HandleRef.cs
- ListChangedEventArgs.cs
- UnaryNode.cs
- SizeAnimation.cs
- DoubleLinkList.cs
- HtmlTernaryTree.cs
- XmlSiteMapProvider.cs
- ExpressionEditorSheet.cs
- cache.cs
- XPathSelectionIterator.cs
- UnmanagedBitmapWrapper.cs
- LineSegment.cs
- GeneralTransform3DGroup.cs
- SkipStoryboardToFill.cs
- XPathSingletonIterator.cs
- ColumnMapVisitor.cs
- Socket.cs
- DbConnectionPoolGroup.cs
- DataBinder.cs
- BitmapFrameEncode.cs
- DiagnosticsConfigurationHandler.cs
- PropertyTabChangedEvent.cs
- AxisAngleRotation3D.cs
- COM2EnumConverter.cs
- embossbitmapeffect.cs
- _IPv6Address.cs
- EmptyCollection.cs
- ManipulationStartedEventArgs.cs
- TaskFactory.cs
- TrailingSpaceComparer.cs
- cookie.cs
- SendReply.cs
- JsonFormatReaderGenerator.cs
- WindowsFormsHelpers.cs
- MsmqChannelFactoryBase.cs
- OleDbInfoMessageEvent.cs
- SamlDelegatingWriter.cs
- XLinq.cs
- EdgeProfileValidation.cs
- SelfIssuedAuthAsymmetricKey.cs
- EncryptedData.cs
- TabControlEvent.cs
- NativeMethods.cs
- DependencyPropertyKind.cs
- Font.cs
- PriorityBinding.cs
- FusionWrap.cs
- AnnotationElement.cs
- BufferModeSettings.cs
- WebPartVerbsEventArgs.cs
- DCSafeHandle.cs
- TextRenderer.cs
- SelectionProviderWrapper.cs
- WebPartDisplayModeEventArgs.cs
- TextElementEnumerator.cs
- IxmlLineInfo.cs
- AutomationPatternInfo.cs
- CustomWebEventKey.cs
- WebPartCatalogCloseVerb.cs
- ArgumentsParser.cs
- BrowserCapabilitiesFactoryBase.cs
- DataViewManagerListItemTypeDescriptor.cs
- FocusWithinProperty.cs
- ListViewItem.cs
- Package.cs
- Int16Storage.cs
- SchemaElementDecl.cs
- XmlLanguage.cs
- AnnotationHighlightLayer.cs
- SessionPageStatePersister.cs
- TextServicesManager.cs
- AdapterSwitches.cs
- StandardOleMarshalObject.cs