回发ASPxComboBox的自定义属性编辑
问题描述:
我上的DevExpress XAF应用程序的工作,在这里我需要定义,以便与自定义属性编辑器业务对象的属性之一用于与显示它时的DevExpress不点火这会从另一个业务对象填充像下面的下拉列表:回发ASPxComboBox的自定义属性编辑
[ImmediatePostData(true)]
[ModelDefault("PropertyEditorType", "CollateralSaleTypePropertyEditor")]
[Size(140)]
public string COLLATERAL_SALE_TYPE
{
get { return GetPropertyValue<String>("COLLATERAL_SALE_TYPE"); }
set
{
SetPropertyValue("COLLATERAL_SALE_TYPE", value);
// OnChanged("COLLATERAL_REPOSSESSION_DATE");
}
}
而且,我已经定义了CollateralSaleTypePropertyEditor
并且已经将AutoPostBack设置为true:_dropDownControl.AutoPostBack = true;
我现在面临的问题是,这个帖子后面呢不会发生,而服务器端事件SelectedIndexChanged
没有得到提高:
//Server side event that is not raised
_dropDownControl.SelectedIndexChanged += control_SelectedIndexChanged;
//Client side event that is raised
_dropDownControl.ClientSideEvents.SelectedIndexChanged = "function (sender, e) { e.processOnServer=false;}";
所以基本上每次我改变选定的项目什么都不会发生。我发现下面的链接,解释了更新here的原因。但即使在我遵循这些步骤后,也没有任何反应。
答
我认为解决您的问题是显而易见的。问题是这一行:
dropDownControl.ClientSideEvents.SelectedIndexChanged =
"function (sender, e) { e.processOnServer=false;}";
既然你已经指定e.processOnServer=false
,在客户端产生SelectedIndexChanged
事件,但它不会碰到服务器。
如果您想要SelectedIndexChanged
到达服务器端,您需要完全删除客户端处理程序或将其更改为e.processOnServer=true;
。
嘿,我解决它,没错的processedOnServer属性必须设置为true,这似乎是在特定的下拉列表控制的问题。 – strg
@kejsiStruga高兴它帮助!如果你接受答案,那么将不胜感激。 – andrews