예제 #1
0
 /// <summary>
 /// Handles the OnInsert event of the Items control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="OpenBox.Web.UIBase.Controls.TabMenu.TabMenuItemEventArgs"/> instance containing the event data.</param>
 private void Items_OnItemInserted(object sender, TabMenuItemEventArgs e)
 {
     e.Item.Menu = this;
     this.BindEvents(e.Item);
 }
예제 #2
0
        /// <summary>
        /// Handles the OnClick event of a TabMenuItem control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void TabMenuItem_OnClick(object sender, TabMenuItemEventArgs e)
        {
            // Select this tab menu item.
            e.Item.IsSelected = true;
            foreach (TabMenuItem item in e.Item.GetSiblings())
            {
                item.IsSelected = false;
            }

            // Fire the menu's click event
            if (this.Click != null)
            {
                this.Click(sender, e);
            }

            // Find out if the navigation method needs to be inherited.
            NavigateMethodType navigateMethod = e.Item.NavigateMethod;
            if (navigateMethod == NavigateMethodType.Inherit)
            {
                // Inherit from this menu control
                navigateMethod = this.NavigateMethod;
            }

            // Navigate the the requested page if required.
            if (!string.IsNullOrEmpty(e.Item.NavigateUrl))
            {
                switch (navigateMethod)
                {
                    case NavigateMethodType.ResponseRedirect:
                        Response.Redirect(e.Item.NavigateUrl);
                        break;
                    case NavigateMethodType.ServerTransfer:
                        Server.Transfer(e.Item.NavigateUrl, true);
                        break;
                    case NavigateMethodType.None:
                        // Do not navigate anywhere.
                        break;
                }
            }
        }
예제 #3
0
 /// <summary>
 /// Handles the OnSelectedChanged event of the TabMenuItem control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="OpenBox.Web.UIBase.Controls.TabMenu.TabMenuItemEventArgs"/> instance containing the event data.</param>
 protected void TabMenuItem_OnSelectedChanged(object sender, TabMenuItemEventArgs e)
 {
     if (e.Item.IsSelected)
     {
         foreach (TabMenuItem sibling in e.Item.GetSiblings())
         {
             sibling.IsSelected = false;
         }
     }
 }
예제 #4
0
 /// <summary>
 /// Handles the OnInsert event of the Items control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="OpenBox.Web.UIBase.Controls.TabMenu.TabMenuItemEventArgs"/> instance containing the event data.</param>
 public void OnItemInserted(object sender, TabMenuItemEventArgs e)
 {
     e.Item.Parent = this;
 }