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
- ToolStripCodeDomSerializer.cs
- TemplateFactory.cs
- EventSinkHelperWriter.cs
- FormViewInsertedEventArgs.cs
- _NetRes.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- RequestResizeEvent.cs
- PropertyStore.cs
- ObjectListItem.cs
- ContentOnlyMessage.cs
- Color.cs
- FaultDesigner.cs
- ThemeDirectoryCompiler.cs
- OracleBFile.cs
- XmlnsDictionary.cs
- SafeArrayRankMismatchException.cs
- AxHost.cs
- CommonDialog.cs
- TextOptionsInternal.cs
- ZipIOCentralDirectoryFileHeader.cs
- dataprotectionpermission.cs
- ExtenderControl.cs
- IntSecurity.cs
- HierarchicalDataBoundControl.cs
- ProfileGroupSettings.cs
- ConfigurationManagerHelperFactory.cs
- Executor.cs
- MetadataItem_Static.cs
- ListMarkerLine.cs
- HtmlImageAdapter.cs
- ClientBuildManagerCallback.cs
- DataGridItem.cs
- SystemColors.cs
- Ticks.cs
- DataColumnMapping.cs
- PopupRootAutomationPeer.cs
- SqlTransaction.cs
- RawStylusInputCustomData.cs
- versioninfo.cs
- WebPartConnectionsConfigureVerb.cs
- FileChangesMonitor.cs
- _TLSstream.cs
- TryCatchDesigner.xaml.cs
- AdapterUtil.cs
- EmptyEnumerator.cs
- CodeGen.cs
- LineSegment.cs
- ObjectParameter.cs
- Style.cs
- Int16Converter.cs
- Buffer.cs
- GAC.cs
- DataColumnPropertyDescriptor.cs
- SafeUserTokenHandle.cs
- VirtualDirectoryMapping.cs
- BrowserDefinitionCollection.cs
- MapPathBasedVirtualPathProvider.cs
- ChangesetResponse.cs
- UIAgentAsyncEndRequest.cs
- XmlMembersMapping.cs
- IdleTimeoutMonitor.cs
- ToggleProviderWrapper.cs
- StickyNoteAnnotations.cs
- FigureHelper.cs
- SecurityListenerSettingsLifetimeManager.cs
- EdmPropertyAttribute.cs
- WindowCollection.cs
- FrameworkTemplate.cs
- GetLedgerEntryForRecipientRequest.cs
- LogLogRecordEnumerator.cs
- TraceInternal.cs
- ScriptDescriptor.cs
- PagePropertiesChangingEventArgs.cs
- TokenFactoryCredential.cs
- CompositionTarget.cs
- IncrementalHitTester.cs
- DefaultParameterValueAttribute.cs
- XmlSchemaInclude.cs
- DecimalMinMaxAggregationOperator.cs
- RawAppCommandInputReport.cs
- EventLogQuery.cs
- TcpClientChannel.cs
- TypeDelegator.cs
- SqlHelper.cs
- ListViewItemCollectionEditor.cs
- JsonUriDataContract.cs
- QueryPageSettingsEventArgs.cs
- PageVisual.cs
- BitmapSourceSafeMILHandle.cs
- XmlCharType.cs
- LineSegment.cs
- InputManager.cs
- SortDescription.cs
- ColumnReorderedEventArgs.cs
- CollectionView.cs
- ComponentDispatcherThread.cs
- BitmapInitialize.cs
- ListenerPerfCounters.cs
- ElementHostPropertyMap.cs
- WeakReference.cs