彩票走势图

界面控件DevExpress ASP.NET中文教程 - 如何自定义编辑表单运行时布局?

翻译|使用教程|编辑:龚雪|2023-06-26 10:15:54.420|阅读 52 次

概述:本文主要介绍界面控件DevExpress ASP.NET如何自定义编辑表单的运行时布局,欢迎下载最新版体验~

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

DevExpress ASP.NET控件v19.2版本中就针对ASP. NET WebForms和MVC平台的ASP. NET GridView和CardView控件添加了一个主要增强功能。

DevExpress ASP.NET v23.1正式版下载

DevExpress技术交流群8:523159565      欢迎一起进群讨论

当您使用预定义的或 自定义的编辑表单时,经常需要动态地更改布局。例如,您可能需要根据用户操作、用户权限或需要编辑行的值(或状态)显示/隐藏特定的项或项组。虽然存在现有的CellEditorInitialize事件,但它不提供对编辑表单的布局项访问。

为了解决这个问题,产品团队基于服务器或客户端的各种条件实现了Edit Form布局项(如编辑器、按钮、布局组)的运行时自定义。例如,下面是GridView的编辑表单,控制客户端'Dismissal Information' 组选项卡的可见性,当用户输入 'Dismissal Date'的值时,显示选项卡,否则一个空白值隐藏选项卡:

界面控件DevExpress ASP.NET中文教程图集

要访问布局项并在服务器端更改其设置,请使用新的EditFormLayoutCreated事件。

protected void grid_EditFormLayoutCreated(object sender, DevExpress.Web.ASPxGridViewEditFormLayoutEventArgs e) {
ASPxGridView gridView = sender as ASPxGridView;
LayoutGroup layoutGroupDismissal = (LayoutGroup)e.FindLayoutItemOrGroup("DismissalInformation");

if(layoutGroupDismissal == null) return;

if(gridView.IsNewRowEditing) {
layoutGroupDismissal.Visible = false;
return;
}

var fireDate = gridView.GetRowValues(e.RowVisibleIndex, "FireDate");
layoutGroupDismissal.ClientVisible = fireDate != null && (DateTime)fireDate != DateTime.MinValue;
}

EditFormLayoutCreated事件使用户有机会为不同的行创建不同布局,可以为新的布局项或现有的布局项定制设置,还可以删除、创建、重新排列组项,以及管理行和列的跨度等。

界面控件DevExpress ASP.NET中文教程图集

下面的客户端方法提供了对客户端布局项的访问:

  • – 返回内置Edit Form Layout控件的客户端实例。
  • - 返回与指定列相关的布局项。
  • – 根据项或组的名称返回项或组。

下面的例子演示了如何切换一个项目的可见性:

function onShowHideInfoClick(s, e) {
var contactLayoutGroup = clientGrid.GetEditFormLayoutItemOrGroup("groupContactInfo");
contactLayoutGroup.SetVisible(!contactLayoutGroup.GetVisible());
}

您可以使用类似的方法来控制项目组,包括选项卡组。

CardView

新的功能也可以在CardView控件中使用,我们使用两个方法(和)填充事件的参数,它们允许您查找布局项,以及指示当前卡片是否正在编辑的IsEditingCard 选项。

在客户端,CardView控件提供了与GridView相同的API来管理布局项。

  • – 返回内置Edit Form Layout控件的客户端实例。
  • - 返回与指定列相关的布局项。
  • – 根据项或组的名称返回项或组。

DevExpress企业定制服务

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:慧都网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP