De knoppen "Rij(en) verwijderen" deactiveren in een scherm van het commercieel beheer

0000002627     -      13-06-2025

Onderstaande code toon hoe je de 2 knoppen om lijnen te verwijderen kan deactiveren in een scherm van het commercieel beheer. Dit wordt gerealiseerd in de customizer van de Billing die volgende interfaces implementeert MercatorUi.ICustomizers.IBillingEngineCreated en MercatorUi.ICustomizers.IBillingEngineClosed.

De code met commentaar is als volgt:

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

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.BillingFormLoaded += BillingEngine_BillingFormLoaded;
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine BillingEngine)
        {
            BillingEngine.BillingFormLoaded -= BillingEngine_BillingFormLoaded;
        }

        void BillingEngine_BillingFormLoaded(object sender, EventArgs e)
        {
            MercatorUi.Engine.Gescom.BillingEngine billingEngine = (MercatorUi.Engine.Gescom.BillingEngine)sender;
            var bleuPro = billingEngine.BillingForm.Controls.OfType<MercatorUi.BoutonsPro.BleuPro>().FirstOrDefault(); // we identificeren de strip in de onderkant van het scherm
            if (bleuPro != null)
            {
                MercatorUi.BoutonsPro.ButtonXPro buttonLignes = bleuPro.Controls.OfType<MercatorUi.BoutonsPro.ButtonXPro>().FirstOrDefault(b => b.Name == "lignes");
                if (buttonLignes != null)
                {
                    buttonLignes.SubItems[2].Enabled = false; // disable "Lijn wissen"
                    buttonLignes.SubItems[3].Enabled = false; // disable "Alle lijnen wissen"
                }
            }
        }
    }
}


Functionele cookies: Cookies die nodig zijn voor het gebruik van de website en voorkeurscookies. Ze bevatten geen persoonsgegevens. (Meer informatie)

Analytische cookies: Verzamelen van statistieken met betrekking tot het gedrag van internetgebruikers. (Meer informatie)

Marketingcookies: Om bezoekers op verschillende websites te volgen voor advertentiedoeleinden. (Meer informatie)