Gebruik van een tweede "Bestandsbrowser"-object dat naar een lokale directory verwijst

0000001995     -      22-12-2024

In Mercator kan een onbeperkt aantal "Bestandsbrowser"-objecten worden toegevoegd in de informatiebestandfiches (onder andere). Bijvoorbeeld: bij een klantenfiche verwijst dit object altijd naar de subdirectory CLI + identificatiecode van de klant in de directory FILES. Wanneer we dit bekijken, is het niet erg interessant om twee objecten van dit type naast elkaar te kunnen plaatsen. Via de onderstaande code kan de directory voor de tweede bestandsbrowser worden gewijzigd, zo kunt u hem bijvoorbeeld laten verwijzen naar C:\test\files\cli\identificatiecode van de klant. Maar uiteraard is ook iedere andere aanpassing mogelijk.

Dit voorbeeld is opgesteld op basis van de customizer SigCli, die de volgende interfaces implementeert:

Het maakt gebruik van het event AfterRead waarmee u makkelijk de overgang naar een andere informatiebestandfiche detecteert.

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

        public void FormLoadCustomize(System.Windows.Forms.Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.MovableControls.MovableFileView movableFileView = (MercatorUi.MovableControls.MovableFileView)sigForm.MovableControls["F205730BDA"];
            movableFileView.AfterRead += FileView_AfterRead;
        }

        public void FormClosedCustomize(System.Windows.Forms.Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.MovableControls.MovableFileView movableFileView = (MercatorUi.MovableControls.MovableFileView)sigForm.MovableControls["F205730BDA"];
            movableFileView.AfterRead -= FileView_AfterRead;
        }

        void FileView_AfterRead(object sender, EventArgs e)
        {
            MercatorUi.MovableControls.MovableFileView movableFileView = (MercatorUi.MovableControls.MovableFileView)sender;
            string c_id = movableFileView.Form.DataSource.Rows[0]["C_ID"].ToString().TrimEnd();
            if (c_id != "")
                movableFileView.SetCurrentFolder(@"c:\test\files\cli\" + Api.CleanRep(c_id));
        }

    }
}

De waarde van de ID "F205730BDA" moet worden aangepast volgens de scherminstellingen.



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)