翻譯|行業(yè)資訊|編輯:龔雪|2024-04-17 11:05:55.437|閱讀 88 次
概述:本文將為大家展示DevExpress WinForms 24.1預(yù)覽版中的一些新的具體功能,歡迎下載相關(guān)組件體驗!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
DevExpress WinForm擁有180+組件和UI庫,能為Windows Forms平臺創(chuàng)建具有影響力的業(yè)務(wù)解決方案。DevExpress WinForms能完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序,無論是Office風格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),它都能輕松勝任!
在之前的文章中(點擊這里回顧>>),我們?yōu)榇蠹医榻B了DevExpress WinForms將在6月發(fā)布的新版本中公開的一些新功能,接下來的一系列文章我們將就之前的內(nèi)容展開說明,敬請期待哦~
注意:Early Access和CTP builds版本僅用于早期測試目的,不準備用于生產(chǎn)使用。此版本可以與DevExpress產(chǎn)品的其他主要版本并排安裝,請在安裝Early Access和CTP版本之前備份您的項目和其他重要數(shù)據(jù)。
DevExpress技術(shù)交流群10:532598169 歡迎一起進群討論
DevExpress WinForms數(shù)據(jù)感知UI控件(如數(shù)據(jù)網(wǎng)格、樹列表、編輯器)現(xiàn)在支持DateOnly和TimeOnly數(shù)據(jù)類型(在.NET和.NET Framework應(yīng)用程序中),與傳統(tǒng)的DateTime類型相比,這些類型提供了以下優(yōu)點:使用清晰、改進的數(shù)據(jù)庫兼容性、序列化期間更少的空間,以及減輕與不同時區(qū)相關(guān)的潛在錯誤/不一致的能力。
內(nèi)置DateOnly和TimeOnly支持擴展到:
官方技術(shù)團隊還希望在未來的更新中擴展DateOnly和TimeOnly數(shù)據(jù)類型對數(shù)據(jù)編輯器庫(包括DevExpress WinForms DateEdit和TimeEdit控件)的支持。
用戶現(xiàn)在可以同時編輯合并區(qū)域中的所有單元格,也可以根據(jù)需要修改單獨的單元格(在GridView和banddedgridview中)。使用新的MergedCellEditMode屬性啟用此特性,并指定用戶如何編輯合并的單元格數(shù)據(jù)。
選項包括:
using DevExpress.XtraGrid.Views.Grid; // Allows users to edit data cells in a merged range. gridView1.OptionsView.MergedCellEditMode = MergedCellEditMode.VisibleCells;
這個版本包含了新的API,可以在Find Panel中顯示預(yù)定義和/或自定義UI控件。有了這個新選項,您可以在使用DevExpress Find Panel時構(gòu)建完全可定制/個性化的界面。
使用在WinForms應(yīng)用中引入自定義的查找面板UI元素:
// This code snippet comes from the Find Panel module in our WinForms Data Grid demo (v24.1). CheckButton showCustomButton = null; void ceShowCustomButton_CheckedChanged(object sender, EventArgs e) { CheckEdit customButton = sender as CheckEdit; if(customButton.Checked) { showCustomButton = view.FindPanelItems.AddCheckButton(customButtonName, null, view.OptionsFind.Behavior != FindPanelBehavior.Search, (button, args) => { CheckButton checkButton = button as CheckButton; view.OptionsFind.Behavior = checkButton.Checked ? FindPanelBehavior.Filter : FindPanelBehavior.Search; checkButton.ToolTip = "Find Panel Mode"; icbFindPanelBehavior.EditValue = view.OptionsFind.Behavior; }); showCustomButton.ImageOptions.ImageUri.Uri = "Filter;Size16x16;Svg"; } else { showCustomButton = null; view.FindPanelItems.RemoveItem(customButtonName); } icbFindPanelBehavior.Enabled = showCustomButton == null; }
v24.1將簡化了為單個Data Grid UI元素顯示DevExpress彈出菜單的過程。
在以前的版本中,您必須在控件的"PopupMenuShowing"事件中自定義內(nèi)置菜單(添加、刪除菜單項),在v24.1中,您可以使用新的e.ShowCustomMenu方法輕松顯示自定義菜單(在設(shè)計或運行時創(chuàng)建和自定義):
void gridView1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) { if (e.MenuType == GridMenuType.Column) { popupMenu_Column.Tag = e.HitInfo; popupMenu_Column.MenuCaption = $"{e.HitInfo.Column}"; e.ShowCustomMenu(popupMenu_Column); } }
API增強擴展到:DevExpress TreeList、Vertical Grid (Property Grid)和Pivot Grid。
DevExpress WinForms Data Grid控件包含一個ShowFilterPopupExcel事件,用于隱藏受Excel啟發(fā)的過濾器下拉菜單中的“Filters” 和“Values”選項卡中的特定過濾器選項。v24.1為事件參數(shù)添加了e.HideFilter(filterType)方法,來實現(xiàn)靈活的過濾器定制。使用這種方法,您可以在“Filters”選項卡中隱藏特定的篩選項(以限制選項并簡化UI)。
void gridView1_ShowFilterPopupExcel(object sender, DevExpress.XtraGrid.Views.Grid.FilterPopupExcelEventArgs e) { if (e.Column.FieldName == "UnitPrice") { e.HideFilter(DevExpress.Utils.Filtering.Internal.CustomUIFilterType.BelowAverage); e.HideFilter(DevExpress.Utils.Filtering.Internal.CustomUIFilterType.Between); e.HideFilter(DevExpress.Utils.Filtering.Internal.CustomUIFilterType.BottomN); // ... } }
為了解決常見的與布局相關(guān)的開發(fā)任務(wù),新的CalcBestSize(maxSize, checkScrollInfo)方法計算網(wǎng)格控件的最大允許大小(以顯示盡可能多的數(shù)據(jù)行和列)。
您現(xiàn)在可以通過處理新的TileView.CustomDrawTile事件來定制tile的外觀,通過其全面的事件參數(shù)(APIs),您可以輕松更改邊框形狀和顏色或繪制自定義UI元素,以滿足特定的設(shè)計需求/用戶偏好。
您可以根據(jù)需要在tile中呈現(xiàn)HTML和CSS模板。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)