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
- MobileFormsAuthentication.cs
- PropertyDescriptorCollection.cs
- CssStyleCollection.cs
- BamlTreeMap.cs
- AddressHeader.cs
- COM2ColorConverter.cs
- UseManagedPresentationBindingElement.cs
- ClassValidator.cs
- BitmapEffectDrawingContent.cs
- PerformanceCounterNameAttribute.cs
- WmiEventSink.cs
- RemoteWebConfigurationHost.cs
- DbConnectionClosed.cs
- Type.cs
- UMPAttributes.cs
- DbModificationClause.cs
- SafeRightsManagementHandle.cs
- RequestTimeoutManager.cs
- _NegoState.cs
- DateTimeOffsetConverter.cs
- FormClosedEvent.cs
- DependencyObjectProvider.cs
- XmlObjectSerializerWriteContextComplexJson.cs
- PropertyManager.cs
- ArraySubsetEnumerator.cs
- AnonymousIdentificationSection.cs
- Documentation.cs
- XmlConvert.cs
- WSSecurityOneDotOneReceiveSecurityHeader.cs
- TextBox.cs
- _NativeSSPI.cs
- StatusBarAutomationPeer.cs
- SqlDataReaderSmi.cs
- PropVariant.cs
- ChangesetResponse.cs
- ObjectStateManager.cs
- PatternMatchRules.cs
- storepermission.cs
- DataGridSortCommandEventArgs.cs
- GiveFeedbackEventArgs.cs
- InputBindingCollection.cs
- CanonicalXml.cs
- Expressions.cs
- ModelChangedEventArgsImpl.cs
- AutomationAttributeInfo.cs
- Focus.cs
- WsdlImporterElementCollection.cs
- SharedStatics.cs
- Compress.cs
- EnumMember.cs
- BitmapCodecInfoInternal.cs
- ToolStripDropDownMenu.cs
- TableDetailsCollection.cs
- Viewport2DVisual3D.cs
- WebProxyScriptElement.cs
- ListViewEditEventArgs.cs
- GradientBrush.cs
- ClientSideQueueItem.cs
- SettingsAttributeDictionary.cs
- UnregisterInfo.cs
- MenuBase.cs
- ObjectContext.cs
- LogPolicy.cs
- BrowserTree.cs
- ConstructorNeedsTagAttribute.cs
- Overlapped.cs
- SecurityTokenSpecification.cs
- WebPartCatalogAddVerb.cs
- ApplicationSettingsBase.cs
- HttpCookie.cs
- ColorBuilder.cs
- DefaultParameterValueAttribute.cs
- MenuItemStyle.cs
- RegisteredHiddenField.cs
- StatusBarDrawItemEvent.cs
- SettingsPropertyValueCollection.cs
- GuidelineSet.cs
- cache.cs
- SystemParameters.cs
- ConfigurationLocation.cs
- RegexGroup.cs
- ProfileServiceManager.cs
- ContainerActivationHelper.cs
- ParseElement.cs
- NewExpression.cs
- SelectionWordBreaker.cs
- XmlCustomFormatter.cs
- MetabaseSettingsIis7.cs
- _NestedMultipleAsyncResult.cs
- DataBoundControlAdapter.cs
- DataServiceHostWrapper.cs
- CombinedGeometry.cs
- SingleObjectCollection.cs
- RadioButtonStandardAdapter.cs
- PerformanceCounterPermissionEntry.cs
- RunWorkerCompletedEventArgs.cs
- MethodAccessException.cs
- ToggleButton.cs
- BlurBitmapEffect.cs
- FormsAuthenticationUserCollection.cs