VS 2005 Same ToolStripItems For ToolStripDropDownButton And ContextMenuStrip?
Sep 4, 2009
At design-time I have added the ToolStripItems to the ToolStripDropDownButton but I want to provide a Context Menu which has the same items but when I am adding the items to the ContextMenuStrip at runtime they are removed from the ToolStripDropDownButton and are only available to the ContextMenuStrip already, is it not possible to have them in both ToolStripDropDownButton and ContextMenuStrip?Rather than duplicating the menus I would have preferred utilizing them in both ToolStripDropDownButton and ContextMenuStrip.
find the underlying DataGridView (DGV) when responding to a Right Click on a ToolStripMenu (TSM).I have several DGV's all using the same ContextMenuStrip (CMS) [DGV.ContextMenuStrip=CMS]I have six ToolStripMenuItems under the CMS. I thought I could just add a unique handler for each of the ToolStripMenuItems and be a happy camper on each Right Click...But I cannot figure a way to decode the underlying DGV. There doesn't seem to be any relationships between DGV and TSM and none between CMS and TSM.Is this path a dead end? If so how should one do it? FYI my DGV data is unbounded.
I've got a contextmenustrip with a couple levels of dropdowns (submenu items). Let's say I right-click the form and show the "main" set of items, one of which is "Food". If I move the mouse over Food (not click it), a dropdown (submenu) for Food should open, which it does. But then, say, one of the food items is "Fruit". When I move the mouse over "Fruit", the Fruit submenu should open automatically - but it does not always - sometimes it does, but sometimes I have to click it to open it. Furthermore, once "Fruit" has been clicked once to open, any other dropdown items (let's say we had "Veggies" and "Meat") will automatically open as I expect; and then "Fruit" will behave as expected also.
Any ideas on how to correct this inconsistent behavior? (i.e. all sets of dropdowns associated with a contextmenuitem should open when the mouse is moved over it, a click should not be required)
What I'm trying to do is make my own contextmenustrip for the web browser control, this menu has two items so far: "Select All" which will select all the text displayed and "Copy" which simply copies whatever text is highlighted or selected. No images are displayed so no need to worry about that.
Also I've noticed that whenever a file is dragged from windows and dropped onto the web browser control on my form, the browser simply displays the file (these are xml files that I'm dropping on the control, on my form) which is not what I want it to do, instead I want to grab the file path & name and use it elsewhere. The browser control doesn't have the DragEnter, DragDrop, DragLeave events like labels, forms, textboxes, etc... how would I handle this?
I am in the process of converting a Visual Studio 2003 project to Visual Studio 2005. Part of this effort also includes replacing some ComponentOne controls with .NET controls.
If you assign a ContextMenuStrip to the DataGridView.ContextMenuStrip property and then right-click a cell, the CellMouseClick event doesn't fire. Why would the ContextMenuStrip block this event from occurring?
My workaround at the moment is to separate the ContextMenuStrip from the DataGridView and show it with code, but this seems unnecessary.
I have a application with a toolstrip. I placed a toolstripdropdownbutton on it that is called 'Favorites'.
I add buttons to it programatically during runtime. But how do I add a click event to them? Or does the toolstripdropdownbutton has a click event for his children?
How would I add a new ToolStripItem with code, which will have a Click event which uses the text from the ToolStripItem to read a file? So the ToolStripItem most somehow send it's text to the Click event.
I have created a custom ToolStripProgressBar. It is basically a class inherited from ToolStripStatusLabel, and i paint the 'progress' bar myself (just a simple rectangle). I have tried creating a custom ToolStripProgressBar using different methods including inheriting from both ProgressBar, ToolStripProgressBar and ToolStripControlHost. I always ran into difficulties doing in this way. Inheriting from ToolStripStatusLabel works well, but with one issue...
In order to have the progress bar update in the statusbar, i have to call StatusStrip.Refresh. Trouble is, adds a huge overhead to the drawing of the progress bar graphics. Simply calling the invalidate method of my ToolStripStatusLabel does not seem to render anything to the screen. how to have my graphics draw without calling the refresh method?
So I have a bit of a problem and maybe I'm going about it in the wrong way UNPOSSIBLE! :-D All I'm looking to do is create a few popup menus using contextmenustrips, it seems reasonable enough to me. What I want to happen is when I mouse over a label I want it to open up the contextmenu and THEN close once I am off the label and the contextmenu strip WITHOUT having to click the form. so I can go up and down a set of labels and popup menus as I move the mouse over each. This has turned out to be much harder than I anticipated. :-o
So at first I though ok lets try this code below. But this just causes the menu to flicker I "thought" focus would go to the contextmenustrip but i doesnt seem that way
Public Class Form1
Private Sub Label1_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles label1.MouseHover ContextMenuStrip1.Show(Label1, 20, 0) End Sub
Private Sub Label1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label1.MouseLeave ContextMenuStrip1.Visible = False End Sub
Private Sub Label2_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label2.MouseHover ContextMenuStrip2.Show(Label2, 20, 0) End Sub
Private Sub Label2_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label2.MouseLeave ContextMenuStrip2.Visible = False End Sub End Class
So then I thought ok well I'll just try to have it where when I leave the contextmenustrip I'll close that. THIS WORKS but not exactly how I want it to I can hit a label then jump onto the menu then off to another label but cant go label to label up and down the form.
Private Sub ContextMenuStrip1_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ContextMenuStrip1.MouseLeave ContextMenuStrip1.Close()
End Sub
Then I thought ok well how about something like
Private Sub Label1_MouseHover(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.MouseHover If Label1.Focus Then ContextMenuStrip1.Show(Label1, 20, 0) Else ContextMenuStrip1.Close() End If End Sub
But that didnt work either, I have another vb.net guy with me and hes all *shrug* I'm probably just going about this in the wrong way your suggestions are welcome. Thanks mucho everybody
I am formerly a VB6 programmer learning the .Net world of VB2008. I am confused and need assistance with the following.I am attempting to get a ContextMenuStrip to work on a DataGridView. I want my program to add the ContextMenuStrip and fill in its menu items. I would then like a right-click on a menu item to take me to a unique click event to handle the specific menu action.The example below is a simple form with a datagridview (1) and contextmenustrip (1). I could not get it to work without adding the ContextMenuStrip control manually.
I have a windows form application that has two tabs on it. On each tab there is a RichTextBox which i want the user to be able to copy, paste etc from within.I have tried to set this up but am finding that when i paste anything into the RichTextBox1 it is also copied into the RichTextBox2 on the second tab?My code is below, can you spot any errors with this? I only have 1 ContextMenuStrip within my form, should i have more than this?
Private Sub PasteToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PasteToolStripMenuItem.Click RichTextBox1.Cut()
first off all i have this form called bookingand in this form i have a datagridview called datagridv1and i placed a contextmenustrip to the formbooking from the toolboxHOW DO remove the label what is in de datagridvthrough the contextmenustrip that i attach to this labelthis my code
Private columnindex As Integer = Datagridv1.CurrentCell.ColumnIndex
I have a lowlevelkeyboard hook in my program. The keydown event checks the active window title to see if a microsoft word document is open, and when the letter 'y' is pressed a contextmenustrip is called. Everything works great except for the arrow keys. When the contextmenustrip is visible, the arrow keys will not select or move through items in the contextmenustrip. I set up some IF statements to check if the contextmenustrip is open, and when it is the up/down arrow keys select the next item in the menu. The problem is that the word document has actual focus and the up/down keys are still sent to the word document (causing the line the cursor is on.)I have tried using e.suppresskey in the keydown event to try to prevent this, but the keys are still pressed on the word document.
In vb.net (2008), I want to be able to control when a contextMenuStrip (context menu) is displayed. I don't want it to always appear when the right mouse button is clicked...only when certain criteria within my program are met. I figure I would use addHandler but I'm not exactly clear on how to completely control the opening of the contextMenuStrip. I know I would issue a call to the "open" method to render the contextMenuStrip. However, I am unclear as to how to completely take over control of when to render the contextMenuStrip.
Is there an event that fires in vb.net just before a contextMenuStrip appears when the user right clicks on a control? I need to be able to control the content of the contextMenuStrip just prior to the menu strip appearing. Basically I want to be able to change the content of the contextMenuStrip just before it appears.
I'm working in .NET 2008 trying to toggle the visbility states of subitems on a form-designed contextmenustrip. [code]Depending on the user's installed hardware, I may want to hide subitem1 or subitem2 because it is not relevant to that user. I am sort of a beginner at this, I can't figure out how to access the subitems' properties programmatically. I am not sure what I was doing before but I sat down again this afternoon and rewrote my code and it worked fine.
I'm trying to have my NotifyIcon show the native context menu of the Operating system. When I use ContextMenuStrips they have the custom skin made from Microsoft which I dont want. I want to use the original menu that all other applications use on my computer. How Can I use that menu? I have tried using the "old" ContextMenu control but It doesnt work with NotifyIcons, it only displays with other controls.
I have single ContextMenuStrip attached to more controls.In use the Opening event of ContextMenuStrip to filter/disable some context entries.In this case the property ContexteMenuStrip.SourceControl is set correctly.The problem I have is on the Click event of a ToolStripMenuItem. This item is inside a ToolStripDropDown. I get the parent item with code:
Dim tsmi As ToolStripMenuItem = DirectCast(DirectCast(DirectCast(sender, ToolStripMenuItem).Owner, ToolStripDropDown).OwnerItem, ToolStripMenuItem)
Is it possible to add items to a contextmenustrip during runtime in a certain order?I have a program that is very flexible, it can do one instance to any number of instances of whatever, but I want the menu to be able to also display links to each instance.So like
I have made it so that as soon as the form opens it puts an icon in the tray and when you right click the icon it comes up with a contextmenustrip. in the form I have put a button and a textbox. when you click the button, it creates a new item in the contextmenustrip What I wanted to do was add a peice of code to this new item, is this possible?
I am trying to build a context menu for a little "random quote" generator project. Most of the context menu for the NotifyIcon I can create at design time, but I need to create a submenu of file names that the user can choose (check) to be included in the quote population.
I originally did this in VB6 and it worked, now I get a Null reference error. The problem occurs in the Sub BuildChooseFilesMenuItems. Code follows. (Basically, I need to read in the filenames, make them menuitems and keep track of their "checked" state. It is dynamic because the user could add new quote files to the directoryy where they are stored.
[code] Option Strict Off Option Explicit On Imports VB = Microsoft.VisualBasic