Code:
/ 4.0 / 4.0 / 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. #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
- LogAppendAsyncResult.cs
- XmlDataSource.cs
- TextTreeTextNode.cs
- MetadataPropertyvalue.cs
- XpsImageSerializationService.cs
- ScriptingWebServicesSectionGroup.cs
- CustomAttribute.cs
- Converter.cs
- WindowsEditBoxRange.cs
- WebPartEventArgs.cs
- ColumnBinding.cs
- BinaryObjectReader.cs
- HierarchicalDataSourceControl.cs
- BookmarkCallbackWrapper.cs
- XmlArrayAttribute.cs
- SponsorHelper.cs
- WindowInteractionStateTracker.cs
- UIPermission.cs
- MarginsConverter.cs
- JapaneseCalendar.cs
- Pkcs7Recipient.cs
- MenuBase.cs
- ColorAnimationBase.cs
- FrameworkElementAutomationPeer.cs
- LocatorGroup.cs
- Object.cs
- SecuritySessionSecurityTokenProvider.cs
- CheckBox.cs
- IsolatedStorage.cs
- RepeaterItemCollection.cs
- MetaChildrenColumn.cs
- ExtensionCollection.cs
- TableHeaderCell.cs
- PasswordTextNavigator.cs
- MdbDataFileEditor.cs
- ConversionHelper.cs
- NotFiniteNumberException.cs
- HtmlControlPersistable.cs
- WebResourceAttribute.cs
- PageAdapter.cs
- ImageFormatConverter.cs
- SessionEndedEventArgs.cs
- XmlReflectionImporter.cs
- X509LogoTypeExtension.cs
- Filter.cs
- WebConfigurationHostFileChange.cs
- PathSegment.cs
- Trigger.cs
- MetafileHeaderWmf.cs
- ImageSource.cs
- DecimalFormatter.cs
- SimpleWebHandlerParser.cs
- SiteMapNodeItemEventArgs.cs
- ParagraphResult.cs
- MachineKeyValidationConverter.cs
- nulltextcontainer.cs
- CustomWebEventKey.cs
- Preprocessor.cs
- DbProviderManifest.cs
- InvalidProgramException.cs
- _MultipleConnectAsync.cs
- GridLengthConverter.cs
- ButtonColumn.cs
- TemplateContent.cs
- ReferenceEqualityComparer.cs
- BuiltInPermissionSets.cs
- ThreadStateException.cs
- XmlnsCache.cs
- _BufferOffsetSize.cs
- Pen.cs
- XPathItem.cs
- DynamicILGenerator.cs
- Directory.cs
- ComponentChangedEvent.cs
- PtsPage.cs
- MessageQueueEnumerator.cs
- GenericAuthenticationEventArgs.cs
- Int32RectConverter.cs
- HostedBindingBehavior.cs
- TreeNodeClickEventArgs.cs
- TrustDriver.cs
- ParallelTimeline.cs
- SoapAttributes.cs
- EndpointDiscoveryMetadata.cs
- WebPartConnection.cs
- DocumentApplicationState.cs
- WindowsTitleBar.cs
- WindowVisualStateTracker.cs
- SimpleRecyclingCache.cs
- Membership.cs
- CryptoApi.cs
- NGCSerializerAsync.cs
- StylusPoint.cs
- ExceptionAggregator.cs
- ListItemCollection.cs
- TypeExtensions.cs
- TimeSpanSecondsConverter.cs
- Int32CAMarshaler.cs
- CustomPopupPlacement.cs
- RotationValidation.cs