Hello,
I've created a RadContextMenu and wanted to add a few check boxes for user to check and un-check when right click. I see that the RadContextMenu can add combo box, but what about checkbox? After a check box is check. I want it to stay check until the user right click and un-check it. Is this possible?
Thanks in advance for the help.
5 Answers, 1 is accepted
0
Richard Slade
Top achievements
Rank 2
answered on 21 Nov 2010, 05:10 PM
Hi Ekin,
Yes, this is actually quite a simple thing to do. I have added a checkbox in a context menu to a RadGridView in my sample below.
First, you need to define a context menu, and to this, you can add a RadMenuHostItem, which can host a RadCheckBox
1: Define your RadContextMenu
2: In FormLoad for exmaple, add the RadCheckBox to the context menu using a RadMenuHostItem
3: In the ContextMenuOpening event of the RadGridView, assign your RadContextMenu
Because the context of the context menu is defined outside of the scope of the ContextMenuOpening, the checkbox will remain checked or unchecked each time the context menu is opened.
Hope that helps, but let me know if you need more information
Regards,
Richard
Yes, this is actually quite a simple thing to do. I have added a checkbox in a context menu to a RadGridView in my sample below.
First, you need to define a context menu, and to this, you can add a RadMenuHostItem, which can host a RadCheckBox
1: Define your RadContextMenu
Private
m_ContextMenu
As
RadContextMenu
2: In FormLoad for exmaple, add the RadCheckBox to the context menu using a RadMenuHostItem
m_ContextMenu =
New
RadContextMenu()
Dim
checkbox
As
New
RadCheckBox()
checkbox.Text =
"Check Me"
Dim
hostedCheckBox
As
New
RadMenuHostItem(checkbox)
m_ContextMenu.Items.Add(hostedCheckBox)
3: In the ContextMenuOpening event of the RadGridView, assign your RadContextMenu
Private
Sub
RadGridView1_ContextMenuOpening(
ByVal
sender
As
System.
Object
, _
ByVal
e
As
Telerik.WinControls.UI.ContextMenuOpeningEventArgs)
Handles
RadGridView1.ContextMenuOpening
e.ContextMenu = m_ContextMenu.DropDown
End
Sub
Because the context of the context menu is defined outside of the scope of the ContextMenuOpening, the checkbox will remain checked or unchecked each time the context menu is opened.
Hope that helps, but let me know if you need more information
Regards,
Richard
0
Ekin
Top achievements
Rank 1
answered on 22 Nov 2010, 07:40 AM
quick question...how to I handle the checked and unchecked event of the check box in the context menu? And close the context menu after the check or unchecked is selected
Thank you so much..
0
Accepted
Richard Slade
Top achievements
Rank 2
answered on 22 Nov 2010, 08:36 AM
Hi Ekin,
No problem, Here you go..
1: Same as before, but add an event handler
2: Handle the event and close the context menu
Hope that help but let me know if you need more information
Richard
No problem, Here you go..
1: Same as before, but add an event handler
m_ContextMenu =
New
RadContextMenu()
Dim
checkbox
As
New
RadCheckBox()
checkbox.Text =
"Check Me"
Dim
hostedCheckBox
As
New
RadMenuHostItem(checkbox)
m_ContextMenu.Items.Add(hostedCheckBox)
'// Add an event handler
AddHandler
checkbox.ToggleStateChanged,
AddressOf
CheckBoxChanged
2: Handle the event and close the context menu
Private
Sub
CheckBoxChanged(
ByVal
sender
As
Object
,
ByVal
e
As
StateChangedEventArgs)
Me
.m_ContextMenu.DropDown.ClosePopup(RadPopupCloseReason.CloseCalled)
'// I have access to e.ToggleState here
End
Sub
Hope that help but let me know if you need more information
Richard
0
Ekin
Top achievements
Rank 1
answered on 22 Nov 2010, 12:04 PM
Thank you! You're the man!!
0
Themos
Top achievements
Rank 1
answered on 06 Sep 2012, 07:56 AM
Thank you for the code, it's been very helpful!
I'm having the following problem though:
How can I access the radcheckbox after it has been created?
I can't seem to get a reference to the radcheckbox, which is a child of radmenuhost item, which is a child of radcontextmenu.
Your help would be greatly appreciated.
Regards
Nevermind, I figured it out: I had to call the HostedControl method of the RadMenuHostItem instead of trying to access it as a child item!
I'm having the following problem though:
How can I access the radcheckbox after it has been created?
I can't seem to get a reference to the radcheckbox, which is a child of radmenuhost item, which is a child of radcontextmenu.
Your help would be greatly appreciated.
Regards
Nevermind, I figured it out: I had to call the HostedControl method of the RadMenuHostItem instead of trying to access it as a child item!