Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / MenuItemBinding.cs / 1305376 / MenuItemBinding.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Drawing.Design; using System.Web; ////// Provides a data mapping definition for a Menu /// [DefaultProperty("TextField")] public sealed class MenuItemBinding : IStateManager, ICloneable, IDataSourceViewSchemaAccessor { private bool _isTrackingViewState; private StateBag _viewState; ////// The data member to use in the mapping /// [ DefaultValue(""), WebCategory("Data"), WebSysDescription(SR.Binding_DataMember), ] public string DataMember { get { object s = ViewState["DataMember"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["DataMember"] = value; } } ////// The depth of the level for which this MenuItemBinding is defining a data mapping /// [ DefaultValue(-1), TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, " + AssemblyRef.SystemDesign), WebCategory("Data"), WebSysDescription(SR.MenuItemBinding_Depth), ] public int Depth { get { object o = ViewState["Depth"]; if (o == null) { return -1; } return (int)o; } set { ViewState["Depth"] = value; } } [DefaultValue(true)] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_Enabled)] public bool Enabled { get { object o = ViewState["Enabled"]; return (o == null ? true : (bool)o); } set { ViewState["Enabled"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_EnabledField), ] public string EnabledField { get { object s = ViewState["EnabledField"]; return (s == null ? String.Empty : (string)s); } set { ViewState["EnabledField"] = value; } } ////// Gets and sets the format string used to render the bound data for this node /// [DefaultValue("")] [Localizable(true)] [WebCategory("Databindings")] [WebSysDescription(SR.MenuItemBinding_FormatString)] public string FormatString { get { object s = ViewState["FormatString"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["FormatString"] = value; } } ////// Gets and sets the image URl to be rendered for this node /// [DefaultValue("")] [Editor("System.Web.UI.Design.ImageUrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))] [UrlProperty()] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_ImageUrl)] public string ImageUrl { get { object s = ViewState["ImageUrl"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["ImageUrl"] = value; } } ////// Get and sets the fieldname to use for the ImageUrl property in a MenuItem /// [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_ImageUrlField), ] public string ImageUrlField { get { object s = ViewState["ImageUrlField"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["ImageUrlField"] = value; } } [DefaultValue("")] [Editor("System.Web.UI.Design.UrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))] [UrlProperty()] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_NavigateUrl)] public string NavigateUrl { get { object s = ViewState["NavigateUrl"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["NavigateUrl"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_NavigateUrlField), ] public string NavigateUrlField { get { object s = ViewState["NavigateUrlField"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["NavigateUrlField"] = value; } } [DefaultValue("")] [Editor("System.Web.UI.Design.UrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))] [UrlProperty()] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_PopOutImageUrl)] public string PopOutImageUrl { get { object s = ViewState["PopOutImageUrl"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["PopOutImageUrl"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_PopOutImageUrlField), ] public string PopOutImageUrlField { get { object s = ViewState["PopOutImageUrlField"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["PopOutImageUrlField"] = value; } } [DefaultValue(true)] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_Selectable)] public bool Selectable { get { object o = ViewState["Selectable"]; return (o == null ? true : (bool)o); } set { ViewState["Selectable"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_SelectableField), ] public string SelectableField { get { object s = ViewState["SelectableField"]; return (s == null ? String.Empty : (string)s); } set { ViewState["SelectableField"] = value; } } [DefaultValue("")] [Editor("System.Web.UI.Design.UrlEditor, " + AssemblyRef.SystemDesign, typeof(UITypeEditor))] [UrlProperty()] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_SeparatorImageUrl)] public string SeparatorImageUrl { get { object s = ViewState["SeparatorImageUrl"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["SeparatorImageUrl"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_SeparatorImageUrlField), ] public string SeparatorImageUrlField { get { object s = ViewState["SeparatorImageUrlField"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["SeparatorImageUrlField"] = value; } } ////// Gets and sets the target window that the MenuItemBinding will browse to if selected /// [DefaultValue("")] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_Target)] public string Target { get { object s = ViewState["Target"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["Target"] = value; } } [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_TargetField), ] public string TargetField { get { string s = (string)ViewState["TargetField"]; if (s == null) { return String.Empty; } else { return s; } } set { ViewState["TargetField"] = value; } } ////// Gets and sets the display text /// [DefaultValue("")] [Localizable(true)] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_Text)] public string Text { get { object s = ViewState["Text"]; if (s == null) { s = ViewState["Value"]; if (s == null) { return String.Empty; } } return (string)s; } set { ViewState["Text"] = value; } } ////// Get and sets the fieldname to use for the Text property in a MenuItem /// [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_TextField), ] public string TextField { get { object s = ViewState["TextField"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["TextField"] = value; } } ////// Gets and sets the MenuItemBinding tooltip /// [DefaultValue("")] [Localizable(true)] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_ToolTip)] public string ToolTip { get { object s = ViewState["ToolTip"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["ToolTip"] = value; } } ////// Get and sets the fieldname to use for the ToolTip property in a MenuItem /// [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_ToolTipField), ] public string ToolTipField { get { object s = ViewState["ToolTipField"]; if (s == null) { return String.Empty; } else { return (string)s; } } set { ViewState["ToolTipField"] = value; } } ////// Gets and sets the value /// [DefaultValue("")] [Localizable(true)] [WebCategory("DefaultProperties")] [WebSysDescription(SR.MenuItemBinding_Value)] public string Value { get { object s = ViewState["Value"]; if (s == null) { s = ViewState["Text"]; if (s == null) { return String.Empty; } } return (string)s; } set { ViewState["Value"] = value; } } ////// Get and sets the fieldname to use for the Value property in a MenuItem /// [ DefaultValue(""), TypeConverter("System.Web.UI.Design.DataSourceViewSchemaConverter, " + AssemblyRef.SystemDesign), WebCategory("Databindings"), WebSysDescription(SR.MenuItemBinding_ValueField), ] public string ValueField { get { object s = ViewState["ValueField"]; if (s == null) { return String.Empty; } return (string)s; } set { ViewState["ValueField"] = value; } } ////// The state for this MenuItemBinding /// private StateBag ViewState { get { if (_viewState == null) { _viewState = new StateBag(); if (_isTrackingViewState) { ((IStateManager)_viewState).TrackViewState(); } } return _viewState; } } internal void SetDirty() { ViewState.SetDirty(true); } public override string ToString() { return (String.IsNullOrEmpty(DataMember) ? SR.GetString(SR.TreeNodeBinding_EmptyBindingText) : DataMember); } #region ICloneable implemention ////// /// Creates a clone of the MenuItemBinding. /// object ICloneable.Clone() { MenuItemBinding clone = new MenuItemBinding(); clone.DataMember = DataMember; clone.Depth = Depth; clone.Enabled = Enabled; clone.EnabledField = EnabledField; clone.FormatString = FormatString; clone.ImageUrl = ImageUrl; clone.ImageUrlField = ImageUrlField; clone.NavigateUrl = NavigateUrl; clone.NavigateUrlField = NavigateUrlField; clone.PopOutImageUrl = PopOutImageUrl; clone.PopOutImageUrlField = PopOutImageUrlField; clone.Selectable = Selectable; clone.SelectableField = SelectableField; clone.SeparatorImageUrl = SeparatorImageUrl; clone.SeparatorImageUrlField = SeparatorImageUrlField; clone.Target = Target; clone.TargetField = TargetField; clone.Text = Text; clone.TextField = TextField; clone.ToolTip = ToolTip; clone.ToolTipField = ToolTipField; clone.Value = Value; clone.ValueField = ValueField; return clone; } #endregion #region IStateManager implementation ///bool IStateManager.IsTrackingViewState { get { return _isTrackingViewState; } } /// void IStateManager.LoadViewState(object state) { if (state != null) { ((IStateManager)ViewState).LoadViewState(state); } } /// object IStateManager.SaveViewState() { if (_viewState != null) { return ((IStateManager)_viewState).SaveViewState(); } return null; } /// void IStateManager.TrackViewState() { _isTrackingViewState = true; if (_viewState != null) { ((IStateManager)_viewState).TrackViewState(); } } #endregion #region IDataSourceViewSchemaAccessor implementation /// object IDataSourceViewSchemaAccessor.DataSourceViewSchema { get { return ViewState["IDataSourceViewSchemaAccessor.DataSourceViewSchema"]; } set { ViewState["IDataSourceViewSchemaAccessor.DataSourceViewSchema"] = value; } } #endregion } } // 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
- WindowsSidIdentity.cs
- KerberosRequestorSecurityTokenAuthenticator.cs
- DefaultExpressionVisitor.cs
- StringFormat.cs
- RefExpr.cs
- XmlTypeAttribute.cs
- FillRuleValidation.cs
- ADMembershipUser.cs
- ConfigurationManager.cs
- ReachDocumentReferenceSerializerAsync.cs
- DataGridViewButtonCell.cs
- ProtocolInformationReader.cs
- MetadataUtilsSmi.cs
- TextSchema.cs
- EntityClassGenerator.cs
- DbProviderFactoriesConfigurationHandler.cs
- SimpleTableProvider.cs
- UInt32Storage.cs
- SqlParameter.cs
- UpdatePanelControlTrigger.cs
- ScriptControl.cs
- WizardSideBarListControlItemEventArgs.cs
- IncrementalReadDecoders.cs
- basemetadatamappingvisitor.cs
- UnsafeNativeMethodsTablet.cs
- EntityCollection.cs
- RegistrySecurity.cs
- SystemIcons.cs
- DefaultEventAttribute.cs
- StronglyTypedResourceBuilder.cs
- ErrorRuntimeConfig.cs
- FrameworkElementAutomationPeer.cs
- ConfigPathUtility.cs
- EdmError.cs
- ImpersonateTokenRef.cs
- LogConverter.cs
- ArraySortHelper.cs
- XmlSchemaAnnotation.cs
- EventWaitHandleSecurity.cs
- GatewayDefinition.cs
- wgx_sdk_version.cs
- PartitionResolver.cs
- AdjustableArrowCap.cs
- _AcceptOverlappedAsyncResult.cs
- Rule.cs
- WebPartAddingEventArgs.cs
- TemplateFactory.cs
- TextDpi.cs
- TextTreeTextElementNode.cs
- HttpRequestCacheValidator.cs
- BamlStream.cs
- Point3DAnimationUsingKeyFrames.cs
- LocalizationParserHooks.cs
- WebDescriptionAttribute.cs
- ActiveXHost.cs
- TreeNodeStyleCollection.cs
- QueueException.cs
- safex509handles.cs
- ScrollPatternIdentifiers.cs
- DetailsViewCommandEventArgs.cs
- AdornerHitTestResult.cs
- WinInet.cs
- TextEditorSpelling.cs
- SystemIPGlobalProperties.cs
- PtsContext.cs
- _FixedSizeReader.cs
- SerializationStore.cs
- ConstructorNeedsTagAttribute.cs
- DataGridViewLayoutData.cs
- OverflowException.cs
- ConfigurationPropertyCollection.cs
- DataGridItemAttachedStorage.cs
- KoreanLunisolarCalendar.cs
- EventSinkHelperWriter.cs
- _AcceptOverlappedAsyncResult.cs
- CapabilitiesPattern.cs
- SQLBytes.cs
- TextTreeTextBlock.cs
- CommonGetThemePartSize.cs
- Enum.cs
- HttpServerVarsCollection.cs
- BufferedGraphicsContext.cs
- DataSourceHelper.cs
- AttachedAnnotationChangedEventArgs.cs
- ConfigXmlText.cs
- MessageEnumerator.cs
- securitycriticaldataClass.cs
- TdsParserSafeHandles.cs
- ProtectedConfigurationProviderCollection.cs
- OleDbPropertySetGuid.cs
- VisualCollection.cs
- SessionPageStatePersister.cs
- WindowsListBox.cs
- PropertyValueUIItem.cs
- ObjectDataSourceFilteringEventArgs.cs
- KoreanLunisolarCalendar.cs
- ComplexBindingPropertiesAttribute.cs
- EntityProxyTypeInfo.cs
- Attribute.cs
- DeclarativeCatalogPart.cs