Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / ExpressionsCollectionEditor.cs / 1 / ExpressionsCollectionEditor.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.Design {
using System;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Drawing.Design;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using Control = System.Web.UI.Control;
///
///
///
/// Provides editing functions for data binding collections.
///
///
[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)]
public class ExpressionsCollectionEditor : UITypeEditor {
///
///
///
/// Edits a data binding within the design time
/// data binding collection.
///
///
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) {
Debug.Assert(context.Instance is Control, "Expected control");
Control c = (Control)context.Instance;
IServiceProvider site = c.Site;
if (site == null) {
if (c.Page != null) {
site = c.Page.Site;
}
if (site == null) {
site = provider;
}
}
if (site == null) {
//
return value;
}
IDesignerHost designerHost =
(IDesignerHost)site.GetService(typeof(IDesignerHost));
Debug.Assert(designerHost != null, "Must always have access to IDesignerHost service");
DesignerTransaction transaction = designerHost.CreateTransaction("(Expressions)");
try {
IComponentChangeService changeService =
(IComponentChangeService)site.GetService(typeof(IComponentChangeService));
if (changeService != null) {
try {
changeService.OnComponentChanging(c, null);
}
catch (CheckoutException ce) {
if (ce == CheckoutException.Canceled)
return value;
throw ce;
}
}
DialogResult result = DialogResult.Cancel;
try {
ExpressionBindingsDialog ebDialog = new ExpressionBindingsDialog(site, c);
IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));
result = edSvc.ShowDialog(ebDialog);
}
finally {
if ((result == DialogResult.OK) && (changeService != null)) {
try {
changeService.OnComponentChanged(c, null, null, null);
}
catch {
}
}
}
}
finally {
transaction.Commit();
}
return value;
}
///
///
///
/// Gets the edit stytle for use by the editor.
///
///
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) {
return UITypeEditorEditStyle.Modal;
}
}
}
// 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
- MessageHeaders.cs
- SafeRightsManagementSessionHandle.cs
- Ref.cs
- RawKeyboardInputReport.cs
- BufferedGraphicsManager.cs
- SqlMethodAttribute.cs
- _NTAuthentication.cs
- PageClientProxyGenerator.cs
- TemplateControl.cs
- ListBoxItemAutomationPeer.cs
- ToolstripProfessionalRenderer.cs
- TemplateParser.cs
- WindowsNonControl.cs
- ParserContext.cs
- BitSet.cs
- ImageListStreamer.cs
- StubHelpers.cs
- XmlSchema.cs
- ColumnHeader.cs
- ObjectSpanRewriter.cs
- XmlNamespaceDeclarationsAttribute.cs
- RealizationContext.cs
- IMembershipProvider.cs
- TextCompositionManager.cs
- WebResourceUtil.cs
- ExecutionContext.cs
- TransformValueSerializer.cs
- WmlLinkAdapter.cs
- KnownIds.cs
- MimeReturn.cs
- HttpGetProtocolReflector.cs
- CodeAssignStatement.cs
- ExtensionSimplifierMarkupObject.cs
- ServerProtocol.cs
- BaseResourcesBuildProvider.cs
- UndoManager.cs
- ListViewGroup.cs
- MachineKeyConverter.cs
- Vector3DAnimation.cs
- AnnotationObservableCollection.cs
- Paragraph.cs
- CodeCatchClause.cs
- ToolStripItemRenderEventArgs.cs
- StreamResourceInfo.cs
- PTProvider.cs
- ISO2022Encoding.cs
- DBDataPermissionAttribute.cs
- SetterTriggerConditionValueConverter.cs
- AvTraceFormat.cs
- FakeModelItemImpl.cs
- GenericWebPart.cs
- HierarchicalDataBoundControlAdapter.cs
- ListViewGroupConverter.cs
- SQLStringStorage.cs
- DataGridClipboardHelper.cs
- TransformedBitmap.cs
- RectAnimationClockResource.cs
- DesignerEventService.cs
- DataRowComparer.cs
- DesignerVerb.cs
- TextWriter.cs
- COM2IPerPropertyBrowsingHandler.cs
- XmlCollation.cs
- Knowncolors.cs
- Peer.cs
- Keywords.cs
- HMACMD5.cs
- WebSysDisplayNameAttribute.cs
- CompressStream.cs
- AssemblyBuilder.cs
- HashCodeCombiner.cs
- DataTable.cs
- SqlConnectionPoolProviderInfo.cs
- SHA1Managed.cs
- OciLobLocator.cs
- HostingEnvironment.cs
- SigningProgress.cs
- MultiTrigger.cs
- XmlNodeReader.cs
- MetadataPropertyAttribute.cs
- StyleSheet.cs
- RelationshipManager.cs
- SystemNetHelpers.cs
- XmlCompatibilityReader.cs
- Oid.cs
- DispatchWrapper.cs
- baseshape.cs
- NamespaceListProperty.cs
- Message.cs
- TreeNodeCollectionEditor.cs
- FixedTextContainer.cs
- SoapWriter.cs
- TextSerializer.cs
- WindowsToolbar.cs
- XsdBuilder.cs
- CircleHotSpot.cs
- Object.cs
- validationstate.cs
- NamespaceQuery.cs
- RedirectionProxy.cs