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
- TextServicesManager.cs
- SqlNamer.cs
- StylusPlugin.cs
- RijndaelManagedTransform.cs
- AdornerHitTestResult.cs
- ConditionBrowserDialog.cs
- MetabaseServerConfig.cs
- Preprocessor.cs
- CannotUnloadAppDomainException.cs
- SByteConverter.cs
- MenuTracker.cs
- StylusCaptureWithinProperty.cs
- StreamedFramingRequestChannel.cs
- WorkflowInvoker.cs
- PixelShader.cs
- ArithmeticException.cs
- TreeViewImageIndexConverter.cs
- DoubleIndependentAnimationStorage.cs
- Blend.cs
- BasicKeyConstraint.cs
- IxmlLineInfo.cs
- FileDataSourceCache.cs
- StorageEntityTypeMapping.cs
- CompiledAction.cs
- RotateTransform3D.cs
- ValueUnavailableException.cs
- QueryCacheEntry.cs
- Rect.cs
- PhysicalAddress.cs
- VariantWrapper.cs
- PackWebResponse.cs
- _ShellExpression.cs
- CodeDefaultValueExpression.cs
- WeakReferenceEnumerator.cs
- SynchronizationLockException.cs
- SystemWebCachingSectionGroup.cs
- Encoder.cs
- TemplateGroupCollection.cs
- GraphicsPath.cs
- ActivatedMessageQueue.cs
- Point3DIndependentAnimationStorage.cs
- SqlCacheDependencyDatabase.cs
- LocationUpdates.cs
- CookieProtection.cs
- DirtyTextRange.cs
- DataKeyCollection.cs
- InputElement.cs
- AppDomainGrammarProxy.cs
- RevocationPoint.cs
- RunClient.cs
- MemberAssignmentAnalysis.cs
- FormsAuthenticationUserCollection.cs
- CrossSiteScriptingValidation.cs
- DataGridColumn.cs
- PanningMessageFilter.cs
- DiagnosticsConfigurationHandler.cs
- ComEventsInfo.cs
- controlskin.cs
- Int32Rect.cs
- LoadGrammarCompletedEventArgs.cs
- OleDbException.cs
- DisableDpiAwarenessAttribute.cs
- WebBrowserUriTypeConverter.cs
- BinaryObjectWriter.cs
- XMLUtil.cs
- ListDictionaryInternal.cs
- SQLInt32.cs
- PrimaryKeyTypeConverter.cs
- GlyphRun.cs
- RepeatButtonAutomationPeer.cs
- GridViewRowCollection.cs
- Floater.cs
- DataTableMappingCollection.cs
- XPathCompileException.cs
- CalendarDay.cs
- RtfToXamlLexer.cs
- BindingExpressionUncommonField.cs
- ClientTargetSection.cs
- SecurityToken.cs
- PopupRootAutomationPeer.cs
- DetailsViewDeletedEventArgs.cs
- DependsOnAttribute.cs
- ResourceCollectionInfo.cs
- SessionEndingCancelEventArgs.cs
- TdsRecordBufferSetter.cs
- TextBoxLine.cs
- ListControl.cs
- OlePropertyStructs.cs
- ScalarConstant.cs
- _SSPIWrapper.cs
- FormViewPageEventArgs.cs
- TypeLoadException.cs
- ReferenceEqualityComparer.cs
- CodeBinaryOperatorExpression.cs
- ListSortDescription.cs
- SQLConvert.cs
- FormatConvertedBitmap.cs
- ScriptIgnoreAttribute.cs
- BaseTreeIterator.cs
- DeadCharTextComposition.cs