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
- EtwTrackingParticipant.cs
- ChannelReliableSession.cs
- MaskedTextBox.cs
- SByte.cs
- DnsPermission.cs
- FileSecurity.cs
- ProcessModelSection.cs
- Matrix.cs
- SqlParameterCollection.cs
- XmlDocumentFragment.cs
- SqlDependencyUtils.cs
- HwndAppCommandInputProvider.cs
- versioninfo.cs
- TableLayout.cs
- oledbconnectionstring.cs
- XsltQilFactory.cs
- SortExpressionBuilder.cs
- SecurityTokenProvider.cs
- DynamicDiscoveryDocument.cs
- BitmapEffectState.cs
- Membership.cs
- XmlArrayItemAttributes.cs
- DataGridClipboardHelper.cs
- _FtpControlStream.cs
- StrokeCollection2.cs
- ButtonField.cs
- XmlSchemaType.cs
- SecurityException.cs
- StyleModeStack.cs
- LineBreakRecord.cs
- TypeInfo.cs
- DecimalAnimationBase.cs
- ToolStripEditorManager.cs
- DelegateTypeInfo.cs
- DoubleConverter.cs
- WebPartCatalogAddVerb.cs
- CommandLibraryHelper.cs
- SQLInt32.cs
- Sentence.cs
- OwnerDrawPropertyBag.cs
- RepeaterCommandEventArgs.cs
- StateMachineWorkflow.cs
- AsnEncodedData.cs
- XomlSerializationHelpers.cs
- JsonEncodingStreamWrapper.cs
- TableLayoutPanel.cs
- MulticastNotSupportedException.cs
- ToolBarButton.cs
- NavigateEvent.cs
- ByteStack.cs
- Geometry3D.cs
- CodeEventReferenceExpression.cs
- XmlSchemaChoice.cs
- ApplicationBuildProvider.cs
- SmtpReplyReaderFactory.cs
- CodePropertyReferenceExpression.cs
- ConnectivityStatus.cs
- TimeManager.cs
- ThemeDictionaryExtension.cs
- OleDbErrorCollection.cs
- ParameterToken.cs
- WizardStepBase.cs
- IgnoreSectionHandler.cs
- InstanceNormalEvent.cs
- Speller.cs
- FloaterBaseParaClient.cs
- SocketInformation.cs
- DeviceSpecificChoiceCollection.cs
- JsonFormatReaderGenerator.cs
- ComplexBindingPropertiesAttribute.cs
- MarkerProperties.cs
- DrawListViewItemEventArgs.cs
- BitmapInitialize.cs
- Rotation3DAnimation.cs
- SecurityDocument.cs
- MembershipValidatePasswordEventArgs.cs
- NamedPipeConnectionPool.cs
- QilTernary.cs
- _BufferOffsetSize.cs
- BuildDependencySet.cs
- EntityWithKeyStrategy.cs
- SplineKeyFrames.cs
- ContextStaticAttribute.cs
- CodePageUtils.cs
- TextSerializer.cs
- ReturnType.cs
- SizeIndependentAnimationStorage.cs
- Tuple.cs
- SByte.cs
- XmlSchemaSet.cs
- serverconfig.cs
- HttpRequestBase.cs
- AtomicFile.cs
- PopupRoot.cs
- FrameworkElementAutomationPeer.cs
- XmlKeywords.cs
- SqlCacheDependencyDatabaseCollection.cs
- IndexerHelper.cs
- ToolStripContentPanel.cs
- EdmItemCollection.cs