Open

Opening

Used to initialize data, does not work with visual controls.

The method is followed by Opened()

public override bool Opening()
{
    // at this moment, a user's permission to open the module could be denied
    
    rmView = new dsRmView();
    rmView.Material.Table.Columns.Add("rueckm_material", typeof(DataRowView));
    rmView.Fertigartikel.Table.Columns.Add("rueckm_fertigartikel", typeof(DataRowView));
    
    // the BusinessObject is created after the execution of:
    return base.Opening();
}

Opened

Used for visual initializations.

The module is loaded, but not displayed yet. The method is followed by PostOpen()

public override void Opened()
{
    base.Opened();
    
    // Retrieve data; 
    BusObj.DataSetRetrieved += (sender, e) 
        => Bind();

    // set DataSource for controals
    Bind();
    
    // visual initializations
    dgMaterialFertigCsnr.ShownEditor += (sender, e) 
        => this.InvokeOnMainThreadWithDelay(RefreshMaterialFertigCsnrFilter);
    
    dgMaterialBadge.BadgeClicked += (sender, e) 
        => OpenMaterialDetails();
    dgFertigArtikelBadge.BadgeClicked += (sender, e) 
        => OpenFertigartikelDetails();
    
   // create new row in the DataSet
    NewKopf();
}

PostOpen

Is the place where we can set focus

The module is loaded and displayed.

public override void PostOpen()
{
    base.PostOpen();
    FocusFirstEditableField();
}
public virtual void FocusFirstEditableField()
{
    tbsBetriebsauftrag.Focus();
}

Last updated