Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / WebControls / DataBoundControlActionList.cs / 1 / DataBoundControlActionList.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.WebControls { using System; using System.Collections; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Diagnostics; using System.Web.UI.Design; using System.Web.UI.Design.Util; using System.Web.UI.WebControls; ///internal class DataBoundControlActionList : DesignerActionList { private IDataSourceDesigner _dataSourceDesigner; private ControlDesigner _controlDesigner; /// public DataBoundControlActionList(ControlDesigner controlDesigner, IDataSourceDesigner dataSourceDesigner) : base(controlDesigner.Component) { _controlDesigner = controlDesigner; _dataSourceDesigner = dataSourceDesigner; } public override bool AutoShow { get { return true; } set { } } /// [TypeConverterAttribute(typeof(DataSourceIDConverter))] public string DataSourceID { get { string dataSourceID = null; DataBoundControlDesigner dataBoundControlDesigner = _controlDesigner as DataBoundControlDesigner; if (dataBoundControlDesigner != null) { dataSourceID = dataBoundControlDesigner.DataSourceID; } else { BaseDataListDesigner bdlDesigner = _controlDesigner as BaseDataListDesigner; if (bdlDesigner != null) { dataSourceID = bdlDesigner.DataSourceID; } else { RepeaterDesigner repeaterDesigner = _controlDesigner as RepeaterDesigner; if (repeaterDesigner != null) { dataSourceID = repeaterDesigner.DataSourceID; } else { Debug.Fail("Unknown type called DataBoundControlActionList"); } } } if (String.IsNullOrEmpty(dataSourceID)) { return SR.GetString(SR.DataSourceIDChromeConverter_NoDataSource); } return dataSourceID; } set { ControlDesigner.InvokeTransactedChange(_controlDesigner.Component, new TransactedChangeCallback(SetDataSourceIDCallback), value, SR.GetString(SR.DataBoundControlActionList_SetDataSourceIDTransaction)); } } /// public override DesignerActionItemCollection GetSortedActionItems() { DesignerActionItemCollection items = new DesignerActionItemCollection(); PropertyDescriptor pd = TypeDescriptor.GetProperties(_controlDesigner.Component)["DataSourceID"]; if (pd != null && pd.IsBrowsable) { items.Add(new DesignerActionPropertyItem("DataSourceID", SR.GetString(SR.BaseDataBoundControl_ConfigureDataVerb), SR.GetString(SR.BaseDataBoundControl_DataActionGroup), SR.GetString(SR.BaseDataBoundControl_ConfigureDataVerbDesc))); } // add associated tasks ControlDesigner dsDesigner = _dataSourceDesigner as ControlDesigner; if (dsDesigner != null) { ((DesignerActionPropertyItem)items[0]).RelatedComponent = dsDesigner.Component; } return items; } private bool SetDataSourceIDCallback(object context) { string value = (string)context; DataBoundControlDesigner dataBoundControlDesigner = _controlDesigner as DataBoundControlDesigner; if (dataBoundControlDesigner != null) { PropertyDescriptor dataSourceIDDescriptor = TypeDescriptor.GetProperties(dataBoundControlDesigner.Component)["DataSourceID"]; dataSourceIDDescriptor.SetValue(dataBoundControlDesigner.Component, value); } else { BaseDataListDesigner bdlDesigner = _controlDesigner as BaseDataListDesigner; if (bdlDesigner != null) { PropertyDescriptor dataSourceIDDescriptor = TypeDescriptor.GetProperties(bdlDesigner.Component)["DataSourceID"]; dataSourceIDDescriptor.SetValue(bdlDesigner.Component, value); } else { RepeaterDesigner repeaterDesigner = _controlDesigner as RepeaterDesigner; if (repeaterDesigner != null) { PropertyDescriptor dataSourceIDDescriptor = TypeDescriptor.GetProperties(repeaterDesigner.Component)["DataSourceID"]; dataSourceIDDescriptor.SetValue(repeaterDesigner.Component, value); } else { Debug.Fail("Unknown type called DataBoundControlActionList"); } } } return true; } } } // 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
- ConfigurationSchemaErrors.cs
- GregorianCalendar.cs
- _DigestClient.cs
- DescendentsWalker.cs
- ControlAdapter.cs
- SqlCommandBuilder.cs
- BamlBinaryWriter.cs
- NetTcpBindingCollectionElement.cs
- LogManagementAsyncResult.cs
- ImageInfo.cs
- TextSelectionProcessor.cs
- COAUTHIDENTITY.cs
- wmiprovider.cs
- LineInfo.cs
- WizardStepBase.cs
- OletxDependentTransaction.cs
- QilReference.cs
- CompositeFontFamily.cs
- IERequestCache.cs
- CodeAttachEventStatement.cs
- ConfigurationElementProperty.cs
- DockPatternIdentifiers.cs
- ImportOptions.cs
- newinstructionaction.cs
- activationcontext.cs
- ServicesUtilities.cs
- Duration.cs
- MultiPageTextView.cs
- HtmlWindow.cs
- TraceLevelStore.cs
- MembershipSection.cs
- ImageDrawing.cs
- Terminate.cs
- TimersDescriptionAttribute.cs
- AttributeEmitter.cs
- MenuScrollingVisibilityConverter.cs
- MemberHolder.cs
- XmlSchemaDatatype.cs
- SingleAnimationBase.cs
- DynamicResourceExtension.cs
- MappingMetadataHelper.cs
- DistinctQueryOperator.cs
- Point3DAnimationUsingKeyFrames.cs
- COM2ExtendedTypeConverter.cs
- CodeConstructor.cs
- FormsAuthenticationEventArgs.cs
- DataGridViewDataConnection.cs
- DataGrid.cs
- Bezier.cs
- CssStyleCollection.cs
- FontResourceCache.cs
- ShimAsPublicXamlType.cs
- RuntimeWrappedException.cs
- NativeMethods.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- SBCSCodePageEncoding.cs
- GetWinFXPath.cs
- Random.cs
- OleDbConnectionFactory.cs
- PresentationSource.cs
- HttpRawResponse.cs
- regiisutil.cs
- VariableDesigner.xaml.cs
- ToolboxComponentsCreatingEventArgs.cs
- MenuItem.cs
- ExceptionUtil.cs
- Debugger.cs
- XmlWriterSettings.cs
- DataTrigger.cs
- NetStream.cs
- ProxyAttribute.cs
- Ops.cs
- LocatorPartList.cs
- TextPatternIdentifiers.cs
- XmlElementAttribute.cs
- HttpConfigurationSystem.cs
- MobileCapabilities.cs
- NeedSkipTokenVisitor.cs
- ApplicationContext.cs
- TimeSpanStorage.cs
- MaskDescriptor.cs
- ProviderConnectionPoint.cs
- Script.cs
- EventManager.cs
- StreamGeometryContext.cs
- StringOutput.cs
- Rect3D.cs
- ObjectPersistData.cs
- GridViewEditEventArgs.cs
- Error.cs
- MetadataItem_Static.cs
- TemplateApplicationHelper.cs
- PermissionListSet.cs
- WebPartMinimizeVerb.cs
- cache.cs
- TabRenderer.cs
- PlainXmlWriter.cs
- DrawingContextWalker.cs
- CodeParameterDeclarationExpressionCollection.cs
- PolicyException.cs