New to Telerik UI for WinForms? Start a free 30-day trial
Add ContextMenu to RadPageViewPage tabs
Updated on May 7, 2026
This help article will demonstrate you how to add custom RadContextMenu to RadPageViewPages' tabs, as shown in the following image.
Figure 1: Context menu

To create your custom RadContextMenu, add its' RadMenuItems, set their properties and add them to the RadContextMenu.Items collection:
C#
private void CreateContextMenu()
{
RadMenuItem addNewTabMenuItem = new RadMenuItem();
addNewTabMenuItem.Text = "Add New Tab";
addNewTabMenuItem.Click += new EventHandler(addNewTabMenuItem_Click);
contextMenu.Items.Add(addNewTabMenuItem);
RadMenuSeparatorItem separator = new RadMenuSeparatorItem();
contextMenu.Items.Add(separator);
RadMenuItem closeTabMenuItem = new RadMenuItem();
closeTabMenuItem.Text = "Close Tab";
closeTabMenuItem.Click += new EventHandler(closeTabMenuItem_Click);
contextMenu.Items.Add(closeTabMenuItem);
RadMenuItem closeAllButThisMenuItem = new RadMenuItem();
closeAllButThisMenuItem.Text = "Close All But This";
closeAllButThisMenuItem.Click += new EventHandler(closeAllButThisMenuItem_Click);
contextMenu.Items.Add(closeAllButThisMenuItem);
RadMenuItem closeAllTabsMenuItem = new RadMenuItem();
closeAllTabsMenuItem.Text = "Close All Tabs";
closeAllTabsMenuItem.Click += new EventHandler(closeAllTabsMenuItem_Click);
contextMenu.Items.Add(closeAllTabsMenuItem);
}In the following code snippet you can observe, how to add the most common items functionalities:
C#
void addNewTabMenuItem_Click(object sender, EventArgs e)
{
RadPageViewPage newPage = new RadPageViewPage();
newPage.Text = "My new tab text";
radPageView1.Pages.Add(newPage);
}
void closeTabMenuItem_Click(object sender, EventArgs e)
{
radPageView1.Pages.Remove(radPageView1.SelectedPage);
}
void closeAllButThisMenuItem_Click(object sender, EventArgs e)
{
for (int i = radPageView1.Pages.Count - 1; i >= 0; i--)
{
if (radPageView1.Pages[i] != radPageView1.SelectedPage)
{
radPageView1.Pages.RemoveAt(i);
}
}
}
void closeAllTabsMenuItem_Click(object sender, EventArgs e)
{
radPageView1.Pages.Clear();
}After the context menu is created it have to be associated with RadPageViewPages tabs. This can be done by subscribing to the RadPageView instance' MouseClick event:
C#
void radPageView1_MouseClick(object sender, MouseEventArgs e)
{
RadPageViewItem hitItem = this.radPageView1.ViewElement.ItemFromPoint(e.Location);
if (e.Button == MouseButtons.Right && hitItem != null)
{
contextMenu.Show(this.radPageView1.PointToScreen(e.Location));
}
}