Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / AppliedDeviceFiltersEditor.cs / 1305376 / AppliedDeviceFiltersEditor.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.Design.MobileControls
{
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Drawing.Design;
using System.Windows.Forms.Design;
using DialogResult = System.Windows.Forms.DialogResult;
[
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 AppliedDeviceFiltersTypeEditor : UITypeEditor
{
private static readonly String _appliedDeviceFiltersDescription = "AppliedDeviceFilters";
public override Object EditValue(ITypeDescriptorContext context, IServiceProvider provider, Object value)
{
Debug.Assert(context.Instance is Control, "Expected control");
Control ctrl = (Control) context.Instance;
IServiceProvider serviceProvider;
ISite site = ctrl.Site;
if (site == null && ctrl.Page != null)
{
site = ctrl.Page.Site;
}
if (site != null)
{
serviceProvider = site;
}
else
{
serviceProvider = provider;
}
Debug.Assert(serviceProvider != null,
"Failed to get the serviceProvider");
IComponentChangeService changeService =
(IComponentChangeService) serviceProvider.GetService(typeof(IComponentChangeService));
IDesignerHost designerHost =
(IDesignerHost) serviceProvider.GetService(typeof(IDesignerHost));
Debug.Assert(designerHost != null,
"Must always have access to IDesignerHost service");
IDeviceSpecificDesigner dsDesigner =
designerHost.GetDesigner(ctrl) as IDeviceSpecificDesigner;
Debug.Assert(dsDesigner != null,
"Expected component designer to implement IDeviceSpecificDesigner");
IMobileWebFormServices wfServices =
(IMobileWebFormServices)serviceProvider.GetService(typeof(IMobileWebFormServices));
DialogResult result = DialogResult.Cancel;
DesignerTransaction transaction = designerHost.CreateTransaction(_appliedDeviceFiltersDescription);
try
{
if (changeService != null)
{
try
{
changeService.OnComponentChanging(ctrl, null);
}
catch (CheckoutException ce)
{
if (ce == CheckoutException.Canceled)
{
return value;
}
throw;
}
}
try
{
AppliedDeviceFiltersDialog dialog =
new AppliedDeviceFiltersDialog(dsDesigner, MobileControlDesigner.MergingContextChoices);
IWindowsFormsEditorService edSvc =
(IWindowsFormsEditorService) provider.GetService(typeof(IWindowsFormsEditorService));
result = edSvc.ShowDialog(dialog);
}
finally
{
if (changeService != null && result != DialogResult.Cancel)
{
changeService.OnComponentChanged(ctrl, null, null, null);
}
}
}
finally
{
if (transaction != null)
{
if (result == DialogResult.OK)
{
transaction.Commit();
}
else
{
transaction.Cancel();
}
}
}
return value;
}
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.Modal;
}
}
}
// 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
- ScriptingAuthenticationServiceSection.cs
- OciHandle.cs
- FrameworkRichTextComposition.cs
- XPathNodeList.cs
- Math.cs
- CombinedGeometry.cs
- ProxyHwnd.cs
- AuthenticationSection.cs
- OdbcConnectionHandle.cs
- DatagridviewDisplayedBandsData.cs
- DataGridViewCellEventArgs.cs
- CalendarSelectionChangedEventArgs.cs
- LocalizableAttribute.cs
- PopOutPanel.cs
- WebMessageFormatHelper.cs
- ChangeConflicts.cs
- AttachedPropertyMethodSelector.cs
- _ServiceNameStore.cs
- IndentTextWriter.cs
- WebServiceMethodData.cs
- WeakReferenceEnumerator.cs
- DateTimeUtil.cs
- VoiceChangeEventArgs.cs
- TextReader.cs
- DataGridAddNewRow.cs
- SessionStateModule.cs
- ToolStripDropDownButton.cs
- HtmlLink.cs
- TreeNode.cs
- TreeViewHitTestInfo.cs
- PropertyChangingEventArgs.cs
- DataGridRowDetailsEventArgs.cs
- StatusStrip.cs
- DataGridViewCellStyleConverter.cs
- SqlMultiplexer.cs
- TabControlEvent.cs
- XPathItem.cs
- FileIOPermission.cs
- UncommonField.cs
- SoapIncludeAttribute.cs
- Invariant.cs
- StandardOleMarshalObject.cs
- Normalization.cs
- MetadataArtifactLoaderCompositeResource.cs
- InfiniteTimeSpanConverter.cs
- SHA384Cng.cs
- HttpResponse.cs
- TcpChannelHelper.cs
- TextBox.cs
- QueryAsyncResult.cs
- RuleInfoComparer.cs
- SystemTcpStatistics.cs
- ThrowHelper.cs
- RegisteredDisposeScript.cs
- TCPClient.cs
- EncoderFallback.cs
- WindowsTokenRoleProvider.cs
- InputReportEventArgs.cs
- SoapHeader.cs
- PopOutPanel.cs
- AutomationEvent.cs
- StringStorage.cs
- LookupBindingPropertiesAttribute.cs
- MaterialGroup.cs
- connectionpool.cs
- ObjectIDGenerator.cs
- CrossAppDomainChannel.cs
- SqlServer2KCompatibilityCheck.cs
- _NegotiateClient.cs
- ConfigurationFileMap.cs
- EventWaitHandle.cs
- Window.cs
- XamlGridLengthSerializer.cs
- DictionarySectionHandler.cs
- ProviderIncompatibleException.cs
- RtfToXamlLexer.cs
- Lease.cs
- SettingsProperty.cs
- SchemaCreator.cs
- MetricEntry.cs
- Grammar.cs
- ToolStripArrowRenderEventArgs.cs
- DataRowExtensions.cs
- Roles.cs
- ValueChangedEventManager.cs
- ListViewDataItem.cs
- RegexGroup.cs
- clipboard.cs
- FixedSOMPage.cs
- SamlSerializer.cs
- SettingsPropertyIsReadOnlyException.cs
- ImageIndexEditor.cs
- HashAlgorithm.cs
- EditingCoordinator.cs
- Pair.cs
- Screen.cs
- PropertiesTab.cs
- Renderer.cs
- CompiledRegexRunnerFactory.cs
- LinqDataSourceInsertEventArgs.cs