De programmering op deze pagina laat zien hoe je een tabblad in een informatiebestand kunt verbergen op basis van de gegevens in het bestand. Het voorbeeld wordt gegeven voor het artikelinformatiebestand. Het tabblad wordt verborgen of getoond wanneer het bestand wordt gewijzigd. Deze gebeurtenis wordt geschreven naar de AfterRead van een willekeurige TextBox die aanwezig is in het informatiebestand. In ons voorbeeld is de id 45CD8C1B17.
Het tabblad dat voorwaardelijk moet worden verborgen of weergegeven heeft id Y38I0NOD08.
In dit voorbeeld wordt het tabblad verborgen of getoond op basis van een waarde van rayon.
De geel gemarkeerde waarden moeten overeenkomen met de id's in het venster parametrering.
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Linq;
namespace SigStock
{
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. MovableTextBox textBox = (MercatorUi.MovableControls. MovableTextBox)sigForm.MovableControls["45CD8C1B17"];
textBox.AfterRead += textBox_AfterRead;
}
public void FormClosedCustomize(System.Windows.Forms.Form form)
{
MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) form;
MercatorUi.MovableControls. MovableTextBox textBox = (MercatorUi.MovableControls. MovableTextBox)sigForm.MovableControls["45CD8C1B17"];
textBox.AfterRead -= textBox_AfterRead;
}
void textBox_AfterRead(object sender, EventArgs e)
{
MercatorUi.MovableControls. MovableTextBox textBox = (MercatorUi.MovableControls. MovableTextBox) sender;
MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) textBox.Form;
MercatorUi.Forms.Sig.SigClasses.SigTabItem tabItem = (MercatorUi.Forms.Sig.SigClasses.SigTabItem)sigForm.TabStrip.Tabs["tabItem_Y38I0NOD08"];
tabItem.Visible = sigForm.DataSourceRow["s_id_rayon"].ToString() != "...";
}
}
}