static ContextMenuStrip CreateMDTokenContextMenu(MDTableHeapView view, Table table) { var menu = new ContextMenuStrip(); var go = new ToolStripMenuItem("Go To Row"); go.Click += (sender, e) => { var gridView = (GridView)menu.SourceControl; var rowIndex = gridView.SelectedCells[0].RowIndex; var rid = Convert.ToUInt32(gridView[3, rowIndex].Value); view.SelectItem(new MDToken(table, rid)); }; menu.Items.Add(go); return(menu); }
static ContextMenuStrip CreateCodedTokenContextMenu(MDTableHeapView view, CodedToken code) { var menu = new ContextMenuStrip(); var go = new ToolStripMenuItem("Go To Row"); go.Click += (sender, e) => { var gridView = (GridView)menu.SourceControl; var rowIndex = gridView.SelectedCells[0].RowIndex; if (gridView[4, rowIndex].Value == InvalidValue) { MessageBox.Show("Invalid token.", view.App.AppName, MessageBoxButtons.OK, MessageBoxIcon.Error); return; } var token = code.Decode(Convert.ToUInt32(gridView[3, rowIndex].Value)); view.SelectItem(new MDToken(token)); }; menu.Items.Add(go); return(menu); }