初始化新屏幕

时间:2018-02-06 09:21:03

标签: acumatica

我刚创建了一个包含大量列的新屏幕(gridview)。我想在初始化期间设置我的列运行时。

using System;
using PX.Data;
using PX.Objects.IN;

namespace MyNameSpace
{
  public class MyNewGraph : PXGraph<MyNewGraph>
  {

    public override void Initialize()
    {
        base.Initialize();
    }
}

似乎没有认识到Initialise方法,我得到“找不到合适的方法来覆盖”。是因为它是一个新图形而不是图形扩展吗?那么我应该拨打哪种方法呢?其次,因为我正在设置列标题:

PXUIFieldAttribute.SetDisplayName<MyTable1.field1 >(cache,"My title"); 

如何获取PXCache变量?它在RowSelected事件中可用作参数。但不是在Initialise()。

谢谢!

1 个答案:

答案 0 :(得分:2)

执行图表扩展时可以使用Initialize。从您的示例中,您将定义一个新图形。您应该能够从新的图类构造函数中调用SetDisplayName。您可以根据自己的视图访问缓存。

public class MyNewGraph : PXGraph<MyNewGraph>
{
    public PXSelect<MyTable1> MyView;

    public MyNewGraph()
    {
        PXUIFieldAttribute.SetDisplayName<MyTable1.field1 >(MyView.Cache,"My title"); 
    }
}