ArchestrA Object Toolkit:将数据从configtime传递到编辑器

时间:2014-05-21 14:38:53

标签: c# arrays wonderware

我是用c#编程的新手,我正在为Wonderware的ArchestrA IDE创建一个应用程序对象。

我想创建一个带有复选框列表的标签页,这些复选框是基于configtime中的对象列表创建的,但我不知道如何将此列表从configtime传递给编辑器。

以下是代码摘录:

Configtime中的代码:

public class Surveillance_AppConfigtime : ConfigtimeBase
{ 
    public List<Primitive> _tEnginePrimitives;

    private void Surveillance_AppConfigtime_ConfigtimeInitialize(object sender)
    {
    _tEnginePrimitives = new List<Primitive>();

    _tEnginePrimitives.Add(new Primitive("Scheduler.ScanCyclesCnt", MxDataType.MxInteger));
    _tEnginePrimitives.Add(new Primitive("Scheduler.ScanOverrunsCnt", MxDataType.MxInteger));
    _tEnginePrimitives.Add(new Primitive("Scheduler.ScanOverrunsConsecCnt", MxDataType.MxInteger));
    _tEnginePrimitives.Add(new Primitive("Scheduler.ScanPeriod", MxDataType.MxInteger));
    _tEnginePrimitives.Add(new Primitive("Scheduler.TimeIdleAvg", MxDataType.MxInteger));
    _tEnginePrimitives.Add(new Primitive("Engine.ProcessCPULoad", MxDataType.MxInteger,true));
    _tEnginePrimitives.Add(new Primitive("ScanState", MxDataType.MxBoolean));
    }
}

编辑中的代码:

public partial class Surveillance_AppEditor : ArchestraEditorFramework.aaBaseEditorForm
{
    TabPage enginePage = new TabPage("Engine");
    CheckBox _cb = new CheckBox();
    private int y = 0;

    public Surveillance_AppEditor()
    {   
        //enginePage

        foreach (Primitive oPrimitive in _tEnginePrimitives)
        {
            _cb = new CheckBox();
            _cb.Location = new Point(10, y);
            _cb.Name = oPrimitive.Name;
            platformPage.Controls.Add(_cb);
            y += 15;
        }
        MainTabControl.TabPages.Add(enginePage);
    }
}

希望有人能帮助我。先感谢您!

0 个答案:

没有答案