二开控制显示字段颜色,设计两个字段,单价和基础资料,打开时,单价可以正常显示,但是基础资料没有按照条件显示,同时只是点一点基础资料字段,就变色了。
public override void AfterBindData(EventArgs e)
{
base.AfterBindData(e);
DynamicObjectCollection yfEntityData = this.Model.GetEntityDataObject(base.View.BusinessInfo.GetEntryEntity("FOCEANPAY"));//单据体
EntryGrid yfgrid = this.View.GetControl
for (int i = 0; i < yfEntityData.Count; i++)//循环单据体
{
if (yfEntityData[i]["FISPREMIUM"].ToString() == "1")//条件1
{
yfgrid.SetForecolor("FCDUNITPRICE", "#1E90FF", i); //字段1显示蓝色 单价字段
if (yfEntityData[i]["FYFEWSTATUS"].ToString() == "1")//条件2
{
yfgrid.SetForecolor("FCDCOSTNAME", "#006400", i);//字段b显示绿色 基础资料字段
}
else
{
if (yfEntityData[i]["FYFISSUBMITAUDIT"].ToString() == "1")//条件3
{
yfgrid.SetForecolor("FCDCOSTNAME", "#1E90FF", i);//基础资料显示蓝色
}
else
{
yfgrid.SetForecolor("FCDCOSTNAME", "#CD0000", i);//基础资料显示红色
}
}
}
else
{
yfgrid.SetForecolor("FCDUNITPRICE", "#000000", i);//单价显示黑色
yfgrid.SetForecolor("FCDCOSTNAME", "#000000", i);//基础资料字段显示黑色
}
}
}
ps:1.同样的代码在值更新部分完全有效
2.除了afterbinddata onload事件也是一样效果
推荐阅读