1
我尝试启用MVC上传控件时出现问题。上传控件最初是禁用的。我想要在用户在CheckBoxList中选择一个选项时启用上传控件。 UploadControl不允许在客户端更改它的启用状态,但是如何做到这一点。你能帮助我,并举例说明如何用回发或其他方式做到这一点。如何在客户端启用devexpress MVC上传控件
我尝试启用MVC上传控件时出现问题。上传控件最初是禁用的。我想要在用户在CheckBoxList中选择一个选项时启用上传控件。 UploadControl不允许在客户端更改它的启用状态,但是如何做到这一点。你能帮助我,并举例说明如何用回发或其他方式做到这一点。如何在客户端启用devexpress MVC上传控件
将UploadControl放在CallbackPanel之内。
@Html.DevExpress().CallbackPanel(settings =>
{
settings.Name = "CallbackPanel";
settings.CallbackRouteValues = new { Controller = "Home", Action = "CallbackPanelPartial" };
// other settings
settings.SetContent(() =>
{
using (Html.BeginForm("UploadControlUpload", "Home", FormMethod.Post))
{
Html.DevExpress().UploadControl(s =>
{
s.Name = "UploadControl";
s.CallbackRouteValues = new { Controller = "Home", Action = "UploadControlUpload" };
// other settings
s.Enabled = (bool)ViewData["UPEnabled"];
}).Render();
}
});
}).GetHtml()
我们将存储一个变量,该变量将指示ViewControl中是否启用了UploadControl。所以,我在CallbackPanel局部视图上获得它的值。在我们看来,我们将呈现CallbackPanel以下列方式:
@Html.Action("CallbackPanelPartial", new { CPEnabled = false })
而我们的控制器方法来处理回调到CallbackPanel是:
public ActionResult CallbackPanelPartial(bool CPEnabled) {
ViewData["UPEnabled"] = CPEnabled;
return PartialView("_CallbackPanelPartial");
}
当你选中一个复选框,发送回调CallbackPanel启用UploadControl。为此,请处理the CheckBox CheckedChanged client side event。
@Html.DevExpress().CheckBox(settings =>
{
// other settings
settings.Properties.ClientSideEvents.CheckedChanged = "function (s, e) { CallbackPanel.PerformCallback({CPEnabled: true}); }";
}).GetHtml()