Copie datagridview le contenu d'une cellule dans le presse-papiers dans FullRowSelect Mode
J'ai un winform datagridview pour afficher les détails sur le client et il dispose d'un menu contextuel. Et j'ai mis le datagridview le Mode de sélection FullRowSelect".
Ce que je veux c'est que je veux copier le contenu de l'cliqué sur le contenu d'une cellule dans le presse-papiers. Pas l'ensemble de la ligne de contenu. Juste le contenu de la cellule.
J'ai utilisé le code suivant pour afficher le Menu Contextuel quand on clic droit sur le datagridview et sélectionnez la ligne.
private void dgvCusList_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.RowIndex != -1 && e.ColumnIndex != -1)
{
if (e.Button == MouseButtons.Right)
{
DataGridViewCell clickedCell = (sender as DataGridView).Rows[e.RowIndex].Cells[e.ColumnIndex];
this.dgvCusList.CurrentCell = clickedCell;
var relativeMousePosition = dgvCusList.PointToClient(Cursor.Position);
this.cnxtMnuCusResult.Show(dgvCusList, relativeMousePosition);
}
}
}
Je veux copier le contenu d'une cellule dans le presse-papiers lorsque je clique sur copier l'élément de menu dans mon menu contextuel.
Merci de m'aider à solove cette question.
Merci à l'avance. 🙂
- Je pense que vous devriez poster le code avec le
Clipboard.SetText
et pas le code pour ouvrir le menu contextuel de bande.
Vous devez vous connecter pour publier un commentaire.
Si vous avez de la
SelectionMode
propriétéFullRowSelect
puis de la fonctionnalité de copie deDataGridView
copie l'intégralité de la ligne. Modifier la valeur deCellSelect
. Définir les paramètres ci-dessous pour copier uniquement le contenu de la cellule.Si vous souhaitez conserver les
FullRowSelect
mode de sélection, puis procédez comme ci-dessous..Dans contextMenu ou CellDoubleClick Événement ou cellMouseClick événement , vous pouvez effectuer les opérations suivantes
Il faudra copier le particulier Contenu de la cellule
Junaith réponse ne fonctionne pas comme il se doit lors de la 'EditMode' = EditOnEnter; il ne fonctionne vraiment quand il est à EditProgrammatically. Une étape supplémentaire sera alors peut-être pour certains, pour remplacer le menu par défaut avec votre propre. Vous pouvez désactiver le menu par défaut:
(En VB)