您的位置:首页 > 编程语言

在Axapta中,使用X++代码动态创建Form

2006-01-06 20:03 489 查看
一般来说,在Axapta当中,我们都会使用AOT来创建Form。但是在某些情况下,譬如说要在运行的时候临时生成一个Form的话,那就必须通过X++代码来添加。
以下是示范代码
static void JobUsingCodeCreateForm(Args _args){
Form form;
FormRun formRun;
Args args;
FormBuildDesign formBuildDesign;
FormBuildControl formBuildControl;
FormBuildTabControl formBuildTabControl;
FormBuildTabPageControl formBuildTabPageControl;
FormBuildGridControl formBuildGridControl;
FormBuildDatasource formBuildDatasource;
FormBuildStringControl formString;
;

form = new Form();
formBuildDatasource = form.addDataSource(tableStr(PurchTable));
formBuildDesign = form.addDesign('design');
formBuildTabControl = formBuildDesign.addControl(FormControlType::Tab, 'Tab');
formBuildTabPageControl = formBuildTabControl.addControl(FormControlType::TabPage, 'TabPage');
formBuildGridControl = formBuildTabPageControl.addControl(FormControlType::Grid, 'Grid');
formString = formBuildGridControl.addDataField(formBuildDatasource.id(), fieldNum(PurchTable, PurchId));
formString.label("PurchId");

args = new Args();
args.object(form);
formRun = classFactory.formRunClass(args);
formRun.init();
formRun.run();
formRun.wait();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: