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
- DataTablePropertyDescriptor.cs
- DiagnosticsConfiguration.cs
- DbConnectionOptions.cs
- IOException.cs
- WebPartMovingEventArgs.cs
- CqlParser.cs
- TemplateControl.cs
- EntityModelBuildProvider.cs
- UpdateDelegates.Generated.cs
- SymmetricSecurityProtocolFactory.cs
- PolyBezierSegment.cs
- SqlUdtInfo.cs
- DataGridTablesFactory.cs
- VarRemapper.cs
- SymbolMethod.cs
- Array.cs
- DebugController.cs
- ConfigurationException.cs
- XmlDigitalSignatureProcessor.cs
- StyleBamlTreeBuilder.cs
- HighlightComponent.cs
- WebPartPersonalization.cs
- ToolStripControlHost.cs
- PrimaryKeyTypeConverter.cs
- XmlArrayItemAttributes.cs
- ObjectAnimationBase.cs
- TreeNodeClickEventArgs.cs
- RuntimeConfig.cs
- HybridDictionary.cs
- ProjectionPlan.cs
- ChangePassword.cs
- Timer.cs
- XappLauncher.cs
- AppSettingsSection.cs
- GradientBrush.cs
- CodeIterationStatement.cs
- Polygon.cs
- ExternalException.cs
- RayMeshGeometry3DHitTestResult.cs
- XmlSchemaComplexContentExtension.cs
- ScrollBarAutomationPeer.cs
- PrintDialog.cs
- JoinSymbol.cs
- ListViewPagedDataSource.cs
- XmlAttributeCollection.cs
- ISAPIWorkerRequest.cs
- BrowserTree.cs
- PrintControllerWithStatusDialog.cs
- AppliesToBehaviorDecisionTable.cs
- SchemaImporter.cs
- JsonSerializer.cs
- TextDecoration.cs
- BasicViewGenerator.cs
- ClientBuildManager.cs
- _SSPIWrapper.cs
- OleDbException.cs
- DataGridParentRows.cs
- DataRecordInfo.cs
- TdsEnums.cs
- DocumentStatusResources.cs
- ScriptResourceAttribute.cs
- X509CertificateStore.cs
- UnmanagedMemoryStreamWrapper.cs
- XmlImplementation.cs
- ModelFactory.cs
- RoleManagerEventArgs.cs
- Int64.cs
- InstanceValue.cs
- ReflectionTypeLoadException.cs
- Point4D.cs
- ModifierKeysValueSerializer.cs
- UrlMappingCollection.cs
- EnterpriseServicesHelper.cs
- SmtpNetworkElement.cs
- TextEditorTyping.cs
- ExistsInCollection.cs
- SharedUtils.cs
- IPAddress.cs
- DrawToolTipEventArgs.cs
- DropShadowEffect.cs
- StringWriter.cs
- PagerSettings.cs
- XmlQueryStaticData.cs
- StructuralObject.cs
- ProxyWebPart.cs
- ArglessEventHandlerProxy.cs
- PackageRelationshipSelector.cs
- ToolStripGripRenderEventArgs.cs
- DispatcherTimer.cs
- IsolatedStorageException.cs
- SoapReflectionImporter.cs
- EditorZoneBase.cs
- QilStrConcat.cs
- WindowInteropHelper.cs
- DeviceContext.cs
- PatternMatcher.cs
- XamlTypeWithExplicitNamespace.cs
- TransactionState.cs
- ObjectListFieldsPage.cs
- SystemIPInterfaceProperties.cs