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
- SqlDataRecord.cs
- SizeKeyFrameCollection.cs
- StreamingContext.cs
- SystemColors.cs
- OdbcEnvironmentHandle.cs
- _PooledStream.cs
- GeneralTransform3DTo2D.cs
- DeviceSpecificDesigner.cs
- CheckedListBox.cs
- DiagnosticTrace.cs
- BitmapEffectRenderDataResource.cs
- AttributeUsageAttribute.cs
- ClientBuildManagerCallback.cs
- WindowProviderWrapper.cs
- HtmlInputButton.cs
- BindingCollection.cs
- CngUIPolicy.cs
- IdentityReference.cs
- PtsCache.cs
- HtmlInputRadioButton.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- NetStream.cs
- QueueProcessor.cs
- StyleCollectionEditor.cs
- COM2PropertyBuilderUITypeEditor.cs
- HttpApplication.cs
- MeshGeometry3D.cs
- SimpleWorkerRequest.cs
- WorkflowDataContext.cs
- DocumentApplicationState.cs
- DataServiceQuery.cs
- ContextMenu.cs
- WindowsFormsSynchronizationContext.cs
- LineSegment.cs
- TypefaceCollection.cs
- ZeroOpNode.cs
- RadioButtonBaseAdapter.cs
- DataObjectAttribute.cs
- SiteMap.cs
- webproxy.cs
- DataControlCommands.cs
- GridLengthConverter.cs
- QueryContext.cs
- PropertyTabAttribute.cs
- OdbcConnectionFactory.cs
- TextElementEditingBehaviorAttribute.cs
- PenThreadPool.cs
- OrderedEnumerableRowCollection.cs
- OutputCacheSettings.cs
- StringValueSerializer.cs
- PassportAuthenticationEventArgs.cs
- CacheForPrimitiveTypes.cs
- BypassElement.cs
- Command.cs
- MemberListBinding.cs
- DockAndAnchorLayout.cs
- ZoneButton.cs
- ScriptReferenceBase.cs
- Token.cs
- CompositeFontFamily.cs
- CalendarTable.cs
- CryptoStream.cs
- TypeExtensions.cs
- DataListItemCollection.cs
- DynamicPropertyHolder.cs
- HealthMonitoringSectionHelper.cs
- TextElementEnumerator.cs
- SafeCryptContextHandle.cs
- DirtyTextRange.cs
- MetabaseSettingsIis7.cs
- ListViewAutomationPeer.cs
- ProfilePropertySettings.cs
- WindowManager.cs
- DefaultSection.cs
- SQLBinary.cs
- SettingsAttributes.cs
- ScriptControlManager.cs
- QueryContinueDragEvent.cs
- ListViewCommandEventArgs.cs
- DesignerEditorPartChrome.cs
- MethodAccessException.cs
- DocumentViewerConstants.cs
- httpserverutility.cs
- OleAutBinder.cs
- DataRowExtensions.cs
- Asn1Utilities.cs
- GridView.cs
- BuilderPropertyEntry.cs
- ActiveDocumentEvent.cs
- WebPartConnectionsCancelVerb.cs
- ListViewItemSelectionChangedEvent.cs
- XmlLoader.cs
- SplineQuaternionKeyFrame.cs
- ErrorProvider.cs
- ServiceHost.cs
- TypeDependencyAttribute.cs
- MessageQueuePermissionEntryCollection.cs
- AppSettingsSection.cs
- SystemKeyConverter.cs
- UIElementIsland.cs