我知道在BLC的构造函数中,我们可以通过静态方法
更改displaynamePXUIFieldAttribute.SetDisplayName<>
PXUIFieldAttribute.SetDisplayName<FIELD>(sender, "NEW VALUE");
我尝试更改我的文档标题记录的行选择事件。但它似乎没有用。是否可以在某个rowseleted事件中或初始化后更改此值?
答案 0 :(得分:2)
要在运行时更改表单上的字段显示名称,您可以:
- 向DAC添加新的未绑定字段。(以readonly方式)
[PXString(60, IsUnicode = true)]
[PXUIField(Enabled = false, IsReadOnly = true)]
public virtual string UsrReadOnlyAcctName{get;set;}
public abstract class usrReadOnlyAcctName : IBqlField{}
- 根据使用处理程序的条件修改其值。(示例:选择客户声明周期ID)
public class CustomerMaint_Extension:PXGraphExtension<CustomerMaint>
{
protected void Customer_RowSelected(PXCache sender, PXRowSelectedEventArgs e)
{
var customer = (BAccount)e.Row;
var customerExt = customer.GetExtension<BAccountExt>();
if (customerExt != null)
{
customerExt.UsrReadOnlyAcctName = customer.AcctName;
}
}
}
-SuppressLabel(true)表示新的未绑定字段和标签将被替换的现有字段。
-Locate /将添加的Unbound字段放在现有字段之前。
对于Details或PXGrid,只需确保将 RepaitColumns 属性设置为 PXGrid Control的True。
对于详情,我们已回答了类似的问题:Changing column name dynamically