Back to Devexpress

PopupMenuShowingEventArgs.HitInfo Property

windowsforms-devexpress-dot-xtratreelist-dot-popupmenushowingeventargs.md

latest5.5 KB
Original Source

PopupMenuShowingEventArgs.HitInfo Property

Provides access to information about the clicked visual element.

Namespace : DevExpress.XtraTreeList

Assembly : DevExpress.XtraTreeList.v25.2.dll

NuGet Packages : DevExpress.Win.Navigation, DevExpress.Win.TreeList

Declaration

csharp
public TreeListHitInfo HitInfo { get; }
vb
Public ReadOnly Property HitInfo As TreeListHitInfo

Property Value

TypeDescription
TreeListHitInfo

An object that contains information about a visual element.

|

Remarks

The Tree List shows a context menu when the user right-clicks within the following areas:

The HitInfo and MenuType event arguments allow you to determine the clicked visual element and the type of the menu that is about to be displayed.

Example

The following code sample uses the the TreeList.PopupMenuShowing event to invoke a custom context menu when a user right-clicks a column header:

csharp
void TreeList1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) {
    if (e.MenuType == TreeListMenuType.Column) {
        popupMenu_Column.Tag = e.HitInfo;
        popupMenu_Column.MenuCaption = $"{e.HitInfo.Column}";

        e.ShowCustomMenu(popupMenu_Column);
    }
}
TreeListHitInfo GetHitInfo(BarItemLink link) {
    PopupMenu menu = link.LinkedObject as PopupMenu;
    return menu.Tag as TreeListHitInfo;
}
void barButtonItem_Filter_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
    TreeListHitInfo info = GetHitInfo(e.Link);
    info.Column.TreeList.ShowFilterEditor(info.Column);
}

void barButtonItem_ColumnChooser_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
    TreeListHitInfo info = GetHitInfo(e.Link);
    info.Column.TreeList.ShowCustomization();
}
vb
Private Sub TreeList1_PopupMenuShowing(ByVal sender As Object, ByVal e As PopupMenuShowingEventArgs)
    If e.MenuType = TreeListMenuType.Column Then
        popupMenu_Column.Tag = e.HitInfo
        popupMenu_Column.MenuCaption = $"{e.HitInfo.Column}"

        e.ShowCustomMenu(popupMenu_Column)
    End If
End Sub

Private Function GetHitInfo(ByVal link As BarItemLink) As TreeListHitInfo
    Dim menu As PopupMenu = TryCast(link.LinkedObject, PopupMenu)
    Return TryCast(menu.Tag, TreeListHitInfo)
End Function

Private Sub barButtonItem_Filter_ItemClick(ByVal sender As Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs)
    Dim info As TreeListHitInfo = GetHitInfo(e.Link)
    info.Column.TreeList.ShowFilterEditor(info.Column)
End Sub

Private Sub barButtonItem_ColumnChooser_ItemClick(ByVal sender As Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs)
    Dim info As TreeListHitInfo = GetHitInfo(e.Link)
    info.Column.TreeList.ShowCustomization()
End Sub

See Also

PopupMenuShowingEventArgs Class

PopupMenuShowingEventArgs Members

DevExpress.XtraTreeList Namespace