表格网格(X ++)中的动态字段

时间:2018-09-25 03:32:28

标签: axapta x++ dynamics-ax-2012

当前,我有一个表,其中包含来自用户的输入,这些输入将显示在表单中。

情况是,我能够手动在表单中显示复选框,但是随着用户输入的增加,我需要使复选框自动生成。有什么方法可以在X ++中实现?enter image description here

该复选框是水平放置还是垂直放置都没有限制,只是可以将其显示为列而已。

我想使复选框自动生成,因此当Table_A有输入时,我不需要手动插入表单。

所以当我看1号档时,我知道它在卖什么菜单。

1 个答案:

答案 0 :(得分:2)

如FH-Inway所述,您需要创建其他表格,例如Table_ATable_BRelation。请找到以下代码以动态添加控件:

form   = formRun.form();
design = form.design();

grpCtrl = design.addControl(FormControlType::Group, #GroupControl);    

while select Table_A
{
    idx++;

    Table_ATable_BRelation = this.findOrCreateRelation(Table_A, Table_B);

    chkBoxCtrl = grpCtrl.addControl(FormControlType::CheckBox, strFmt("CheckBox%1", Table_A.ID));
    chkBoxCtrl.label(Table_A.Food_Menu);
    chkBoxCtrl.labelPosition(LabelPosition::Above);
    chkBoxCtrl.helpText(strFmt("your text here %1.", Table_A.Food_Menu));
    chkBoxCtrl.value(Table_ATable_BRelation.IsSelling);

    chkBoxCtrl.registerOverrideMethod(methodStr(FormCheckBoxControl, clicked),
                                      methodStr(ClassHelper, checkBoxClicked),      
                                      this);
}

grpCtrl.columns(idx);