MenuItemBinding.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / 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.
//------------------------------------------------------------------------------ 
// 
//     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

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK