Dans la grille des actions des signalétiques, mettre en italique les actions faites

0000002094     -      31/12/2024

Cette programmation permet de mettre en italique les lignes correspondant à des actions faites (au lieu de les voir barrées) dans les grilles des actions des signalétiques.

La programmation illustrée ici est réalisée sur base d'un customizer SigCli qui implémente les interfaces suivantes :

Le customizer s'écrit comme suit :

Zoom
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
using System.Windows.Forms;
using System.Drawing;
using System.Linq;

namespace SigCli
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer
    {
        public void FormLoadCustomize(Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.Forms.Sig.SigGrids.Actions actions = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.Actions>().FirstOrDefault();
            if (actions != null)
                actions.Grid.CellFormatted += Actions_CellFormatted;
        }

        public void FormClosedCustomize(Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.Forms.Sig.SigGrids.Actions actions = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.Actions>().FirstOrDefault();
            if (actions != null)
                actions.Grid.CellFormatted -= Actions_CellFormatted;
        }

        private void Actions_CellFormatted(object sender, DataGridViewCellFormattingEventArgs e)
        {
            DataGridView grid = (DataGridView)sender;
            if (Convert.ToDateTime(grid.Rows[e.RowIndex].Cells["date_done"].Value) > new DateTime(1900, 1, 1))
                e.CellStyle.Font = new Font("Microsoft Sans Serif", 8.25F, FontStyle.Italic, GraphicsUnit.Point, 0);
        }
    }
}

Notez qu'on exploite ici l'évènement CellFormatted de la MercatorUi.GridPro.DataGridViewXPro. Cet évènement permet d'agir sur le format d'une cellule, après que Mercator ait exécuté l'évènement CellFormatting standard.



Cookies fonctionnels : Cookies nécessaires à l'utilisation du site et cookies de préférence. Ils ne contiennent aucune donnée à caractère personnel. (En savoir plus)

Cookies statistiques : Captation de statistiques liées aux comportements des internautes. (En savoir plus)

Cookies marketing : Pour effectuer le suivi des visiteurs au travers des sites web, à des fins publicitaires. (En savoir plus)