Een knop verbergen in het contacten-rooster

0000002404     -      23-08-2016

Deze customizer toont hoe je kan het weergeven (of niet) van knoppen kan beheren in het contactrooster van de klantenfiche.

In het voorbeeld hieronder, is de knop "Alle lijnen wissen" ontoegankelijk en onzichtbaar.

De code is opgebouwd op basis van de SigCli  customizer die volgende interfaces implementeert:

De code is als volgt:

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

namespace SigCli
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer,
                              MercatorUi.ICustomizers.IFormClosedCustomizer
    {

        public void FormLoadCustomize(System.Windows.Forms.Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)WindowsForm;

            List<Control> l = sigForm.FindMovableControlsByType(typeof(MercatorUi.Forms.Sig.SigGrids.Contacts));
            if (l.Count > 0)
            {
                MercatorUi.Forms.Sig.SigGrids.Contacts contacts = (MercatorUi.Forms.Sig.SigGrids.Contacts)l[0];
                contacts.AssociatedPanelCreated += new MercatorUi.MovableControls.MovableGrid.AssociatedPanelCreatedHandler(contacts_AssociatedPanelCreated); //
            }
        }

        public void FormClosedCustomize(System.Windows.Forms.Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)WindowsForm;

            List<Control> l = sigForm.FindMovableControlsByType(typeof(MercatorUi.Forms.Sig.SigGrids.Contacts));
            if (l.Count > 0)
            {
                MercatorUi.Forms.Sig.SigGrids.Contacts contacts = (MercatorUi.Forms.Sig.SigGrids.Contacts)l[0];
                contacts.AssociatedPanelCreated -= new MercatorUi.MovableControls.MovableGrid.AssociatedPanelCreatedHandler(contacts_AssociatedPanelCreated); //
            }
        }
        
        private void contacts_AssociatedPanelCreated(object sender, MercatorUi.MovableControls.MovableGrid.AssociatedPanelCreatedEventArgs e)
        {
            foreach (Control c in e.AssociatedPanel.Controls)
                if (c.Name == "buttonXDelete")
                {
                    c.Visible = false;
                    c.Enabled = false;
                }
        }
    }
}

 



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)