我有两个自定义字段,一个是复选框,另一个是文本框,我想在更改复选框值时更改启用/禁用屏幕上的文本字段,我在FieldUpdated上添加了一个事件处理程序布尔复选框控件的事件,并获得以下代码:
protected void CROpportunity_MyCheckbox_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
var row = (CROpportunity)e.Row;
}
我可以以及如何从此上下文访问其他控件吗?
我想我需要在复选框上启用CommitChanges。
谢谢
答案 0 :(得分:1)
您应该使用RowSelected
事件处理程序来启用/禁用控件。
这是如何执行此操作的示例:
protected virtual void CROpportunity_RowSelected(PXCache sender, PXRowSelectedEventArgs e,PXRowSelected baseMethod)
{
baseMethod?.Invoke(sender, e);
if(e.Row is CROpportunity row)
{
CROpportunityExt rowExt = PXCache<CROpportunity>.GetExtension<CROpportunityExt>(row);
PXUIFieldAttribute.SetEnabled<CROpportunityExt.myTextField>(cache,row,rowExt.MyCheckbox==true)
}
}