private void _grid_MouseClick(object sender, MouseEventArgs e)
        {
            if ((e.Button & MouseButtons.Right) == MouseButtons.Right)
            {
                var row = GetRow(e.Location);

                if (row?.Tag != null)
                {
                    MenuDefinition.UpdateVisibility(_contextMenu, row.Tag);
                    _contextMenu?.Show(_grid.PointToScreen(e.Location));
                }
            }
        }
        private void _grid_MouseClick(object sender, MouseEventArgs e)
        {
            if ((e.Button & MouseButtons.Right) == MouseButtons.Right)
            {
                var row = GetRow(e.Location);

                if (row?.Tag is IWeakness)
                {
                    MenuDefinition.UpdateVisibility(_weaknessMenu, row.Tag);
                    _weaknessMenu?.Show(_grid.PointToScreen(e.Location));
                }
                if (row?.Tag is IWeaknessMitigation)
                {
                    MenuDefinition.UpdateVisibility(_weaknessMitigationMenu, row.Tag);
                    _weaknessMitigationMenu?.Show(_grid.PointToScreen(e.Location));
                }
            }
        }