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
- ConfigurationSettings.cs
- StreamInfo.cs
- DoubleCollectionValueSerializer.cs
- Inflater.cs
- QueryConverter.cs
- EnumValAlphaComparer.cs
- RightsManagementInformation.cs
- UserControl.cs
- SelectionEditingBehavior.cs
- Rotation3DAnimationBase.cs
- PropertyNames.cs
- XmlTextReader.cs
- SynchronizedPool.cs
- PeerTransportBindingElement.cs
- RSAProtectedConfigurationProvider.cs
- CodeGroup.cs
- Int64AnimationBase.cs
- MonthCalendar.cs
- Run.cs
- ClickablePoint.cs
- ContextStaticAttribute.cs
- TableStyle.cs
- ChildChangedEventArgs.cs
- DbConnectionPoolOptions.cs
- DirectionalLight.cs
- ServiceThrottle.cs
- PropertyDescriptors.cs
- RecommendedAsConfigurableAttribute.cs
- SQLInt64Storage.cs
- Win32Native.cs
- DataKeyCollection.cs
- DuplexChannelBinder.cs
- Pen.cs
- Resources.Designer.cs
- Localizer.cs
- HandlerMappingMemo.cs
- ExtensionQuery.cs
- ResXResourceWriter.cs
- WebPartConnectionsDisconnectVerb.cs
- Inline.cs
- CodeFieldReferenceExpression.cs
- SchemaManager.cs
- FirstQueryOperator.cs
- MutableAssemblyCacheEntry.cs
- CurrentChangedEventManager.cs
- AssertHelper.cs
- IgnoreSectionHandler.cs
- CrossContextChannel.cs
- XmlReflectionMember.cs
- CustomAttributeBuilder.cs
- CallSiteOps.cs
- AttributeEmitter.cs
- ErrorWrapper.cs
- TypeInfo.cs
- ReplacementText.cs
- ObjectQueryState.cs
- Int64Animation.cs
- VisualBasicSettingsConverter.cs
- BasePattern.cs
- ExpressionBinding.cs
- Win32Exception.cs
- XmlByteStreamWriter.cs
- SystemThemeKey.cs
- XmlSchemaRedefine.cs
- BamlRecordReader.cs
- TdsParserSafeHandles.cs
- Component.cs
- WrappedReader.cs
- AttributeUsageAttribute.cs
- ipaddressinformationcollection.cs
- StreamedWorkflowDefinitionContext.cs
- GridViewCancelEditEventArgs.cs
- XmlComplianceUtil.cs
- ComplexTypeEmitter.cs
- VisualStyleRenderer.cs
- mediaeventshelper.cs
- TileBrush.cs
- ClientApiGenerator.cs
- XmlTextWriter.cs
- RemotingConfigParser.cs
- DataGridViewAutoSizeModeEventArgs.cs
- DoubleAnimationUsingKeyFrames.cs
- DropSource.cs
- ExternalException.cs
- StringSource.cs
- ZipIORawDataFileBlock.cs
- DataTableClearEvent.cs
- ParserHooks.cs
- DnsPermission.cs
- ProxyManager.cs
- CryptoStream.cs
- LineServicesCallbacks.cs
- ContentPlaceHolder.cs
- SecondaryIndexList.cs
- LoginNameDesigner.cs
- RsaSecurityTokenAuthenticator.cs
- XpsFontSubsetter.cs
- SingleResultAttribute.cs
- LinkUtilities.cs
- InteropExecutor.cs