186 lines
7.4 KiB
HTML
186 lines
7.4 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<head>
|
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
|
<title>Context Menus</title>
|
|
<link href="style.css" rel="stylesheet" type="text/css">
|
|
<link href="prettify.css" type="text/css" rel="stylesheet">
|
|
<script type="text/javascript" src="prettify.js"></script><script type="text/javascript" src="lang-vb.js"></script><link href="../resources/main.css" media="screen" rel="stylesheet" type="text/css">
|
|
</head>
|
|
<body onload="prettyPrint()"><div class="placing">
|
|
<br><table class="navigation"><tr>
|
|
<td class="navigation-previous"><a href="chapter-columns.html"><strong>
|
|
« Columns</strong></a></td>
|
|
<td class="navigation-index"><a href="../../../better-listview-express/documentation.html"><strong>Index</strong></a></td>
|
|
<td class="navigation-next"><a href="chapter-data.html"><strong>Data Binding »
|
|
</strong></a></td>
|
|
</tr></table>
|
|
<br><h1>Context Menus</h1>
|
|
<div class="banner">
|
|
<a href="../../../blog/page/6/index.html"><img src="../resources/overview.gif" alt="Better ListView" class="ss"></a>
|
|
<div class="inside">
|
|
<div class="text">Better ListView: Ultimate .NET ListView replacement control for WinForms (C#, VB.NET)</div>
|
|
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><a href="../../../betterlistview.exe" class="dbtn">Download</a></span></span>
|
|
<span class="dbtn-c"><span class="dbtn-w"><a href="../../../blog/page/6/index.html" class="dbtn">More Info</a></span></span>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<p class="images"><img src="context-menus.png"></p>
|
|
|
|
<p>Better ListView allows settings four distinct context menu via
|
|
properties:</p>
|
|
|
|
<ul style="list-style:none">
|
|
<li>
|
|
<span class="code">ContextMenuStrip</span><ul style="list-style:none"><li>
|
|
<p>Global context menu, used when uses clicks on client area (or on
|
|
column header/item when the specific menu is not set).</p>
|
|
</li></ul>
|
|
</li>
|
|
<li>
|
|
<span class="code">ContextMenuStripColumns</span><ul style="list-style:none"><li>
|
|
<p>Context menu for column headers.</p>
|
|
</li></ul>
|
|
</li>
|
|
<li>
|
|
<span class="code">ContextMenuStripGroups</span><ul style="list-style:none"><li>
|
|
<p>Context menu for groups.</p>
|
|
</li></ul>
|
|
</li>
|
|
<li>
|
|
<span class="code">ContextMenuStripItems</span><ul style="list-style:none"><li>
|
|
<p>Context menu for items.</p>
|
|
</li></ul>
|
|
</li>
|
|
</ul>
|
|
<br><hr>
|
|
<p class="note">Only <span class="code">ContextMenuStrip</span> is available in <strong><em>Better
|
|
ListView Express</em></strong>.</p>
|
|
<hr>
|
|
<br><p>These are of type
|
|
<span class="code">System.Windows.Forms.ContextMenuStrip</span>.</p>
|
|
|
|
<p>Custom context menus can be displayed manually using
|
|
<span class="code">MouseDown</span> event and <strong><em><a href="chapter-hit-test.html">HitTest</a></em></strong> method to detect location
|
|
of the cursor.</p>
|
|
|
|
<h2>Sample Source Code</h2>
|
|
|
|
|
|
<p><strong>C#</strong></p>
|
|
<pre class="prettyprint"><code class="lang-cs">// add column, group and item
|
|
this.listView.BeginUpdate();
|
|
|
|
this.listView.Columns.Add(new BetterListViewColumnHeader("some column", 256));
|
|
this.listView.Groups.Add("some group");
|
|
this.listView.Items.Add(new BetterListViewItem("some item", this.listView.Groups[0]));
|
|
|
|
this.listView.ShowGroups = true;
|
|
|
|
this.listView.EndUpdate();
|
|
|
|
// set common context menu
|
|
ContextMenuStrip contextMenuStripCommon = new ContextMenuStrip();
|
|
|
|
contextMenuStripCommon.Items.Add("Common Context Menu Item 1");
|
|
contextMenuStripCommon.Items.Add("Common Context Menu Item 2");
|
|
|
|
this.listView.ContextMenuStrip = contextMenuStripCommon;
|
|
|
|
// set column header context menu
|
|
ContextMenuStrip contextMenuStripColumnHeaders = new ContextMenuStrip();
|
|
|
|
contextMenuStripColumnHeaders.Items.Add("Column Header Context Menu Item 1");
|
|
contextMenuStripColumnHeaders.Items.Add("Column Header Context Menu Item 2");
|
|
|
|
this.listView.ContextMenuStripColumns = contextMenuStripColumnHeaders;
|
|
|
|
// set item context menu
|
|
ContextMenuStrip contextMenuStripItems = new ContextMenuStrip();
|
|
|
|
contextMenuStripItems.Items.Add("Item Context Menu Item 1");
|
|
contextMenuStripItems.Items.Add("Item Context Menu Item 2");
|
|
|
|
this.listView.ContextMenuStripItems = contextMenuStripItems;
|
|
|
|
// set group context menu
|
|
ContextMenuStrip contextMenuStripGroups = new ContextMenuStrip();
|
|
|
|
contextMenuStripGroups.Items.Add("Group Context Menu Item 1");
|
|
contextMenuStripGroups.Items.Add("Group Context Menu Item 2");
|
|
|
|
this.listView.ContextMenuStripGroups = contextMenuStripGroups;</code></pre>
|
|
|
|
<p><strong>Visual Basic</strong></p>
|
|
<pre class="prettyprint"><code class="lang-vb">' add column, group and item
|
|
ListView.BeginUpdate()
|
|
|
|
ListView.Columns.Add (New BetterListViewColumnHeader ("some column", 256))
|
|
ListView.Groups.Add ("some group")
|
|
ListView.Items.Add (New BetterListViewItem ("some item", ListView.Groups (0)))
|
|
|
|
ListView.ShowGroups = True
|
|
|
|
ListView.EndUpdate()
|
|
|
|
' set common context menu
|
|
Dim contextMenuStripCommon As New ContextMenuStrip()
|
|
|
|
contextMenuStripCommon.Items.Add ("Common Context Menu Item 1")
|
|
contextMenuStripCommon.Items.Add ("Common Context Menu Item 2")
|
|
|
|
ListView.ContextMenuStrip = contextMenuStripCommon
|
|
|
|
' set column header context menu
|
|
Dim contextMenuStripColumnHeaders As New ContextMenuStrip()
|
|
|
|
contextMenuStripColumnHeaders.Items.Add ("Column Header Context Menu Item 1")
|
|
contextMenuStripColumnHeaders.Items.Add ("Column Header Context Menu Item 2")
|
|
|
|
ListView.ContextMenuStripColumns = contextMenuStripColumnHeaders
|
|
|
|
' set item context menu
|
|
Dim contextMenuStripItems As New ContextMenuStrip()
|
|
|
|
contextMenuStripItems.Items.Add ("Item Context Menu Item 1")
|
|
contextMenuStripItems.Items.Add ("Item Context Menu Item 2")
|
|
|
|
ListView.ContextMenuStripItems = contextMenuStripItems
|
|
|
|
' set group context menu
|
|
Dim contextMenuStripGroups As New ContextMenuStrip()
|
|
|
|
contextMenuStripGroups.Items.Add ("Group Context Menu Item 1")
|
|
contextMenuStripGroups.Items.Add ("Group Context Menu Item 2")
|
|
|
|
ListView.ContextMenuStripGroups = contextMenuStripGroups</code></pre>
|
|
|
|
<br><div class="banner">
|
|
<a href="../../../blog/page/6/index.html"><img src="../resources/overview.gif" alt="Better ListView" class="ss"></a>
|
|
<div class="inside">
|
|
<div class="text">Better ListView: Ultimate .NET ListView replacement control for WinForms (C#, VB.NET)</div>
|
|
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><a href="../../../betterlistview.exe" class="dbtn">Download</a></span></span>
|
|
<span class="dbtn-c"><span class="dbtn-w"><a href="../../../blog/page/6/index.html" class="dbtn">More Info</a></span></span>
|
|
</div>
|
|
</div>
|
|
<table class="navigation"><tr>
|
|
<td class="navigation-previous"><a href="chapter-columns.html"><strong>
|
|
« Columns</strong></a></td>
|
|
<td class="navigation-index"><a href="../../../better-listview-express/documentation.html"><strong>Index</strong></a></td>
|
|
<td class="navigation-next"><a href="chapter-data.html"><strong>Data Binding »
|
|
</strong></a></td>
|
|
</tr></table>
|
|
<br><table class="footer"><tr>
|
|
<td class="footer-title">Better ListView Express Documentation
|
|
</td>
|
|
<td class="footer-copyright">
|
|
Copyright © <a href="../../../index.html" target="_blank">ComponentOwl.com</a>
|
|
</td>
|
|
</tr></table>
|
|
</div></body>
|
|
</html>
|