/// <summary> /// Insérer une ligne en dessous de la ligne courante /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnInsertBelow_Click(object sender, EventArgs e) { //Ligne courante Guid currentLineId = new Guid(); if (grdDialog.SelectedRows.Count == 1) { currentLineId = (Guid)grdDialog.SelectedRows[0].Cells[0].Value; } //Création du nouveau message VO_Message newMessage = _Service.CreateMessage(); //Réorder List <VO_Message> newList = new List <VO_Message>(); foreach (VO_Message message in CurrentDialog.Messages) { newList.Add(message); if (message.Id == currentLineId) { newList.Add(newMessage); } } if (currentLineId == new Guid()) { newList.Add(newMessage); } //Enregistrement CurrentDialog.Messages = newList; //Rechargement de la liste LoadDialog(CurrentDialog, _ScriptType); //Selection de la nouvelle ligne foreach (DataGridViewRow row in grdDialog.Rows) { Guid foreachRowGuid = (Guid)row.Cells[0].Value; if (foreachRowGuid == newMessage.Id) { row.Selected = true; } else { row.Selected = false; } } }