Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / Util / DesignerUtility.cs / 1305376 / DesignerUtility.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.Design.MobileControls.Util
{
using System;
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Reflection;
using System.Web.UI.MobileControls;
using System.Globalization;
[
System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand,
Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)
]
[Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")]
internal class DesignerUtility
{
/* Removed for DCR 4240
internal static bool IsValidName(String name)
{
if (name == null || name.Length == 0)
{
return false;
}
for (int pos = 0; pos < name.Length; pos++)
{
Char ch = name[pos];
if (Char.IsWhiteSpace(ch) || ch.Equals('"') || ch.Equals('<') ||
ch.Equals('>') || ch.Equals('\'') || ch.Equals('&'))
{
return false;
}
}
return true;
}
*/
internal static bool TopLevelControl(MobileControl control)
{
if (control is Form || control is StyleSheet)
{
return true;
}
return false;
}
internal static String ChoiceToUniqueIdentifier(DeviceSpecificChoice choice)
{
Debug.Assert(choice != null);
return ChoiceToUniqueIdentifier(choice.Filter, choice.Argument);
}
internal static String ChoiceToUniqueIdentifier(String filter, String argument)
{
if (String.IsNullOrEmpty(filter))
{
filter = SR.GetString(SR.DeviceFilter_DefaultChoice);
}
if (argument == null)
{
argument = String.Empty;
}
return String.Format(CultureInfo.InvariantCulture, "{0} (\"{1}\")", filter, argument);
}
// NOTE: Throws CheckoutException.Canceled if user cancels checkout.
internal static void EnsureFileCheckedOut(ISite site, String fileName)
{
Type serviceType = Type.GetType("Microsoft.VisualStudio.Shell.VsCheckoutService, " + AssemblyRef.MicrosoftVisualStudio);
// Do nothing if service cannot be found.
if (serviceType == null) {
// Debug.Fail("type Microsoft.VisualStudio.Shell.VsCheckoutService cannot be found in DesignerUtility.EnsureFileCheckedOut.");
return;
}
Object serviceInstance = System.Activator.CreateInstance(
serviceType, new Object[] { site });
try
{
Object[] args = new Object[] { fileName };
bool fileNeedsCheckout = (bool) serviceType.InvokeMember(
"DoesFileNeedCheckout",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
args, CultureInfo.InvariantCulture
);
if(fileNeedsCheckout)
{
serviceType.InvokeMember(
"CheckoutFile",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
args, CultureInfo.InvariantCulture
);
}
}
finally
{
serviceType.InvokeMember(
"Dispose",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
new Object[] {}, CultureInfo.InvariantCulture
);
serviceInstance = null;
}
}
// Ideally we would refactor the rest of the common code in the ADF/PO/DFE
// dialogs into a separate manager object.
internal static StringCollection GetDuplicateChoiceTreeNodes(ICollection treeNodes)
{
HybridDictionary visitedChoices = new HybridDictionary();
StringCollection duplicateChoices = new StringCollection();
foreach(ChoiceTreeNode node in treeNodes)
{
String key = ChoiceToUniqueIdentifier(node.Name, node.Argument);
if(visitedChoices[key] == null)
{
visitedChoices[key] = 1;
}
else
{
if((int)visitedChoices[key] == 1)
{
duplicateChoices.Add(key);
}
visitedChoices[key] = ((int)visitedChoices[key]) + 1;
}
}
return duplicateChoices;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DefaultValueConverter.cs
- Tag.cs
- InlineUIContainer.cs
- PriorityBinding.cs
- Listbox.cs
- CharAnimationBase.cs
- KeyValueInternalCollection.cs
- DataServiceBehavior.cs
- MethodInfo.cs
- DependencyPropertyAttribute.cs
- DataGridViewCellPaintingEventArgs.cs
- Triangle.cs
- CurrentChangedEventManager.cs
- SystemShuttingDownException.cs
- XmlSerializationGeneratedCode.cs
- DataBoundControlActionList.cs
- EncodingNLS.cs
- ReferencedType.cs
- ConvertEvent.cs
- ReferentialConstraintRoleElement.cs
- COAUTHINFO.cs
- ConnectivityStatus.cs
- DelegatedStream.cs
- DocumentReference.cs
- MetadataSource.cs
- HttpModulesSection.cs
- CapabilitiesRule.cs
- ValidationException.cs
- PrincipalPermission.cs
- DictionaryEntry.cs
- DataColumnCollection.cs
- SolidColorBrush.cs
- ResourceExpressionBuilder.cs
- InputLanguageManager.cs
- CallbackValidator.cs
- SchemaImporterExtensionElementCollection.cs
- GeneralTransform3DTo2DTo3D.cs
- BitConverter.cs
- sortedlist.cs
- ListParaClient.cs
- ParserExtension.cs
- ConfigXmlText.cs
- FrugalList.cs
- BrowserDefinitionCollection.cs
- DataControlFieldsEditor.cs
- ParameterRefs.cs
- ContainerFilterService.cs
- OleDbRowUpdatingEvent.cs
- Rect3D.cs
- ScrollChrome.cs
- Membership.cs
- VersionedStreamOwner.cs
- Input.cs
- OdbcInfoMessageEvent.cs
- HexParser.cs
- RegexRunnerFactory.cs
- SqlDeflator.cs
- QueryPageSettingsEventArgs.cs
- DataSourceXmlElementAttribute.cs
- Grid.cs
- ServiceSettingsResponseInfo.cs
- PostBackOptions.cs
- CredentialCache.cs
- SimpleLine.cs
- ParameterModifier.cs
- DataControlHelper.cs
- basecomparevalidator.cs
- CurrentTimeZone.cs
- WebPartEditorCancelVerb.cs
- XamlPoint3DCollectionSerializer.cs
- ContractHandle.cs
- FreezableDefaultValueFactory.cs
- DataGridSortingEventArgs.cs
- DesignerSerializerAttribute.cs
- RSAPKCS1SignatureFormatter.cs
- GradientBrush.cs
- QilLoop.cs
- MultiViewDesigner.cs
- IArgumentProvider.cs
- RestClientProxyHandler.cs
- PictureBox.cs
- SiteMapNodeCollection.cs
- MimeXmlReflector.cs
- XmlName.cs
- RenameRuleObjectDialog.Designer.cs
- RootProfilePropertySettingsCollection.cs
- LocalClientSecuritySettingsElement.cs
- XPathExpr.cs
- DataPager.cs
- WinInetCache.cs
- DataGridViewDataErrorEventArgs.cs
- DateTimeValueSerializerContext.cs
- ReadOnlyHierarchicalDataSource.cs
- ColorBuilder.cs
- HttpResponseInternalWrapper.cs
- SizeAnimationClockResource.cs
- ProcessModule.cs
- WrappedIUnknown.cs
- Sql8ConformanceChecker.cs
- EntityTypeBase.cs