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
- RelationshipDetailsRow.cs
- SerializationAttributes.cs
- NativeMethodsOther.cs
- PowerModeChangedEventArgs.cs
- WriterOutput.cs
- SiteOfOriginContainer.cs
- LineInfo.cs
- FileUtil.cs
- Keywords.cs
- EntityCommandExecutionException.cs
- ValueUnavailableException.cs
- WebSysDisplayNameAttribute.cs
- XamlSerializerUtil.cs
- Baml2006KeyRecord.cs
- ResourceReferenceKeyNotFoundException.cs
- HandlerBase.cs
- Stylesheet.cs
- PropertySegmentSerializationProvider.cs
- TextViewSelectionProcessor.cs
- Int32Rect.cs
- exports.cs
- WebMessageEncodingBindingElement.cs
- TextViewSelectionProcessor.cs
- CodeArgumentReferenceExpression.cs
- PersonalizationDictionary.cs
- StickyNoteContentControl.cs
- RegexCompiler.cs
- Parser.cs
- ValueTypeFixupInfo.cs
- ContentHostHelper.cs
- DisplayClaim.cs
- DataGridViewColumnCollectionDialog.cs
- AnchoredBlock.cs
- ToolBarButtonClickEvent.cs
- ToolStripItemCollection.cs
- Page.cs
- FilteredReadOnlyMetadataCollection.cs
- RelatedCurrencyManager.cs
- Native.cs
- OciHandle.cs
- UdpDuplexChannel.cs
- GenericIdentity.cs
- TdsValueSetter.cs
- SignatureHelper.cs
- OleDbRowUpdatingEvent.cs
- StrongNameIdentityPermission.cs
- CodeObject.cs
- MouseBinding.cs
- ConfigXmlComment.cs
- TypeDescriptor.cs
- DataGridViewColumnEventArgs.cs
- RangeBaseAutomationPeer.cs
- ExpressionConverter.cs
- XmlDocumentFieldSchema.cs
- DocumentPaginator.cs
- SqlSelectClauseBuilder.cs
- WorkflowOperationContext.cs
- QilGenerator.cs
- NameObjectCollectionBase.cs
- PictureBox.cs
- FormsAuthenticationUser.cs
- LoginViewDesigner.cs
- BitVector32.cs
- URL.cs
- RuleElement.cs
- RunInstallerAttribute.cs
- OptimisticConcurrencyException.cs
- InputReport.cs
- TcpStreams.cs
- ProgressiveCrcCalculatingStream.cs
- RegisteredHiddenField.cs
- FixedTextView.cs
- SupportingTokenListenerFactory.cs
- TemplateControlCodeDomTreeGenerator.cs
- XmlSchemaAttributeGroupRef.cs
- DynamicArgumentDialog.cs
- TextControlDesigner.cs
- TextEditorThreadLocalStore.cs
- ProcessInfo.cs
- ControlEvent.cs
- StickyNoteAnnotations.cs
- IgnoreSection.cs
- XmlNavigatorFilter.cs
- ComplexPropertyEntry.cs
- SafeTimerHandle.cs
- SqlDataSourceCache.cs
- EventItfInfo.cs
- ToolboxItemFilterAttribute.cs
- NativeMethods.cs
- WrappedDispatcherException.cs
- ButtonBase.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- RegexCompiler.cs
- Normalization.cs
- ProxyAttribute.cs
- LocalFileSettingsProvider.cs
- Delegate.cs
- Permission.cs
- ToggleButton.cs
- XamlReaderHelper.cs