El evento RowContextMenuStripNeeded sólo se produce cuando se establece la propiedad DataSource del control DataGridView o cuando su propiedad VirtualMode es true. Controlar el evento RowContextMenuStripNeeded es útil cuando se desea mostrar un menú contextual determinado por el estado actual de una fila o por los valores que contiene.
Cuando controla el evento RowContextMenuStripNeeded, se muestra el menú contextual especificado en el controlador siempre que el usuario hace clic con el botón secundario del mouse en una fila, a menos que CellContextMenuStripNeeded reemplace el menú contextual de la celda concreta en la que se hizo clic.
El evento RowContextMenuStripNeeded también se produce siempre que se recupera el valor de la propiedad DataGridViewRow..::.ContextMenuStrip, bien mediante programación o bien cuando el usuario hace clic en una fila con el botón secundario del mouse.
Puede utilizar la propiedad DataGridViewRowContextMenuStripNeededEventArgs..::.RowIndex para determinar el estado de una fila o de los valores contiene, y usar esta información para cambiar o modificar la propiedad DataGridViewRowContextMenuStripNeededEventArgs..::.ContextMenuStrip. Esta propiedad se inicializa con el valor de la propiedad ContextMenuStrip de la fila, que es reemplazado por el valor del evento.
Controle el evento RowContextMenuStripNeeded cuando trabaje con grandes volúmenes de datos con el fin de evitar reducciones en el rendimiento al establecer el valor de la fila ContextMenuStrip para muchas filas. Para obtener más información, vea Procedimientos recomendados para ajustar la escala del control DataGridView en formularios Windows Forms.
Para obtener más información sobre la forma de controlar eventos, vea Utilizar eventos.
Cuando se crea un delegado de DataGridViewRowContextMenuStripNeededEventHandler, se identifica el método que controlará el evento. Para asociar el evento a su controlador, agregue una instancia del delegado al evento. Siempre que se produce el evento, se llama a su controlador, a menos que se quite el delegado. Para obtener más información sobre los delegados de controladores de eventos, vea Eventos y delegados.