Files

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>