NamedRange.BeforeRightClick Event
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Occurs when a NamedRange control is right-clicked, before the default right-click action.
public:
event Microsoft::Office::Interop::Excel::DocEvents_BeforeRightClickEventHandler ^ BeforeRightClick;
event Microsoft.Office.Interop.Excel.DocEvents_BeforeRightClickEventHandler BeforeRightClick;
member this.BeforeRightClick : Microsoft.Office.Interop.Excel.DocEvents_BeforeRightClickEventHandler
Event BeforeRightClick As DocEvents_BeforeRightClickEventHandler
Event Type
Examples
The following code example creates a NamedRange and then populates all the cells with the text Delete
. To test the events, right-click one of the cells to make a border appear around the range, and then double-click one of the cells to clear the range.
This version is for a document-level customization.
Microsoft.Office.Tools.Excel.NamedRange clickRange;
private void ClickToChangeRange()
{
clickRange = this.Controls.AddNamedRange(
this.Range["B2", "D4"], "clickRange");
clickRange.Value2 = "Delete";
clickRange.BeforeDoubleClick += new
Microsoft.Office.Interop.Excel.
DocEvents_BeforeDoubleClickEventHandler(
clickRange_BeforeDoubleClick);
clickRange.BeforeRightClick += new
Microsoft.Office.Interop.Excel.
DocEvents_BeforeRightClickEventHandler(
clickRange_BeforeRightClick);
}
void clickRange_BeforeRightClick(
Excel.Range Target, ref bool Cancel)
{
clickRange.BorderAround(missing, Excel.XlBorderWeight.xlThick,
Excel.XlColorIndex.xlColorIndexAutomatic);
Cancel = true;
}
void clickRange_BeforeDoubleClick(
Excel.Range Target, ref bool Cancel)
{
clickRange.Clear();
Cancel = true;
}
Private clickRange As Microsoft.Office.Tools.Excel.NamedRange
Private Sub ClickToChangeRange()
clickRange = Me.Controls.AddNamedRange(Me.Range("B2", "D4"), _
"clickRange")
clickRange.Value2 = "Delete"
AddHandler clickRange.BeforeDoubleClick, _
AddressOf clickRange_BeforeDoubleClick
AddHandler clickRange.BeforeRightClick, _
AddressOf clickRange_BeforeRightClick
End Sub
Sub clickRange_BeforeRightClick(ByVal Target As Excel.Range, _
ByRef Cancel As Boolean)
clickRange.BorderAround(, Excel.XlBorderWeight.xlThick, _
Excel.XlColorIndex.xlColorIndexAutomatic, )
Cancel = True
End Sub
Sub clickRange_BeforeDoubleClick(ByVal Target As _
Excel.Range, ByRef Cancel As Boolean)
clickRange.Clear()
Cancel = True
End Sub
This version is for an application-level add-in.
Remarks
Right-clicking overlapping NamedRange controls raises the event on each of the controls that overlap.