Dit voorbeeld toont hoe de weergave van een commercieel beheersdocument geblokkeerd kan worden in overeenstemming met om het even welke voorwaarde. (Dit voorb

0000002224     -      21-02-2014

Deze programmering toont hoe u de code in een informatiebestand kan uitvoeren na het filteren. Dit voorbeeld werd voor het informatiebestand klanten gemaakt en maakt het mogelijk om de focus op een veld naar keuze te plaatsen (C_NOM in ons voorbeeld). De code is gebaseerd op een customizer SigCli die de interface MercatorUi.ICustomizers.ISigCreated implementeert en gebruik maakt van het event Filtered van de klasse MercatorUi.Sig.Sig.

De code wordt als volgt samengesteld:

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

namespace SigCli
{
    public class Customizer : MercatorUi.ICustomizers.ISigCreated
    {

        public void SigCreated(MercatorUi.Sig.Sig Sig) // Mercator moet opnieuw worden opgestart opdat het programma rekening zou houden met de wijzigingen die via SigCreated aan de customizer werden aangebracht.
        {
            Sig.Filtered += new MercatorUi.Sig.Sig.FilteredEventHandler(Sig_Filtered);
        }

        void Sig_Filtered(object sender, MercatorUi.Sig.Sig.FilteredEventArgs e)
        {
            List<Control> l = e.SigForm.FindMovableControlsBySource("C_NOM");
            if (l.Count > 0)
                _Divers.SuperFocus((MercatorUi.MovableControls.Interfaces.IMovableControl)l[0]);
        }
    }
}

Indien u de focus eerder op een object in plaats van op een veld wil leggen, dan vervangt u lijn 20 door: (voorbeeld voor de gegevens van de getrouwheidskaart)

Zoom
            List<Control> l = e.SigForm.FindMovableControlsByType(typeof(MercatorUi.Forms.Sig.SigObjects.CliFidel));