翻譯|使用教程|編輯:龔雪|2020-05-11 10:17:58.387|閱讀 524 次
概述:在v19.2中,技術團隊針對ASP.NET WebForms and MVC平臺的ASP.NET GridView和CardView控件進行了重大改進。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
下載DevExpress v19.2完整版 DevExpress v19.2漢化資源獲取
DevExpress ASP.NET Core Controls使用強大的混合方法,結合現代企業Web開發工具所期望的所有功能。該套件通過ASP.NET Razor標記和服務器端ASP.NET Core Web API的生產力和簡便性,提供客戶端JavaScript的性能和靈活性。
在v19.2中,技術團隊針對ASP.NET WebForms and MVC平臺的ASP.NET GridView和CardView控件進行了重大改進。
使用預定義或自定義Edit Form時,通常需要即時更改布局。例如,您可能需要根據用戶操作、用戶權限或需要編輯的行的值(或狀態)顯示/隱藏特定項目或項目組。 盡管存在現有的CellEditorInitialize事件,但它不提供對Edit Form布局項目的訪問。
為解決此問題,技術團隊基于服務器或客戶端上的各種條件實現了Edit Form布局項(例如編輯器,按鈕,布局組)的運行時自定義。例如,這是GridView的Edit Form,用于控制客戶端'Dismissal Information'組標簽的可見性。當用戶輸入'Dismissal Date'的值時,將顯示該標簽,否則空白值將隱藏該標簽。
要訪問布局項并在服務器端更改其設置,請使用新的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事件使您有機會為不同的行創建不同的布局,您可以自定義新布局項目或現有布局項目的設置,還可以刪除、創建、重新排列組項目以及管理行和列跨度等。
以下客戶端方法提供對客戶端上布局項目的訪問:
以下示例演示了如何切換項目的可見性:
function onShowHideInfoClick(s, e) { var contactLayoutGroup = clientGrid.GetEditFormLayoutItemOrGroup("groupContactInfo"); contactLayoutGroup.SetVisible(!contactLayoutGroup.GetVisible()); }
您可以使用類似的方法來控制項目組,包括標簽組。
CardView控件中還提供新的功能,我們使用兩種方法(FindLayoutItemByColumn和FindLayoutItemOrGroup)填充了CardLayoutCreated事件的參數,這兩個方法可讓您查找布局項目,而IsEditingCard選項則指示是否正在編輯當前card。
在客戶端上,CardView控件提供與GridView相同的API來管理布局項。
DevExpress技術交流群:775869749 歡迎一起進群討論
掃描關注DevExpress中文網微信公眾號,及時獲取最新動態及最新資訊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網