个人中心

联系我们

搜索
搜索 登录 免费注册
界面美化
业务优化
开发工具
图像管理
文档管理
Parasoft

新闻资讯

关注工具软件产品最新动态,了解软件开发行业新趋势。

DevExpress Universal v22.2 更新亮点解析(三):WinForms 控件

原创
软件开发
来源:DevExpress
ui界面
DevExpress
Winform
2022-12-15
ui界面
DevExpress
Winform

HTML CSS 支持

消息框和对话框的 HTML CSS 模板

我们的 WinForms 消息框和对话框组件现在支持 HTML CSS 模板。

 

 

WinForms MessageBox 和对话框 - 支持 HTML 模板、DevExpress

 

运行演示   

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

工具提示的 HTML CSS 模板

我们的 WinForms 工具提示现在支持 HTML CSS 模板。

 

 

WinForms 工具提示 - 支持 HTML 模板、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

Accordion - 支持 HTML CSS 模板

WinForms Accordion 控件现在支持我们业界首创的WinForms HTML CSS 模板引擎。HTML CSS 模板允许您在尽可能短的时间内创建完全自定义的用户界面。新的 API 可以为几乎每个 Accordion UI 元素生成模板。

 

 

WinForms Accordion - 支持 HTML 模板、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

我们创建了一个新的演示,演示如何将我们的 WinForms Accordion 控件转换为漂亮的汉堡包菜单。

 

 

WinForms Accordion 菜单 - 支持 HTML 模板、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

HTML 选择

用户现在可以选择 HTML 模板显示的文本。HTML 选择在我们的 HTML 内容控件和我们的 WinForms 数据网格的 ItemsViewTileView WinExplorerView 中可用。使用AllowContentSelection属性启用此功能。

 

我们添加了一个新的SelectedText属性来存储选定区域的文本内容(包括文本、按钮标题、图像和其他 HTML 元素)。

 

SelectedTextChanged事件在选择更改时发生,并允许您根据需要查看和更改选定的文本 。

 

 

HTML 选择 - WinForms 控件、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

自定义绘制 HTML

您现在可以在 Custom Draw 事件处理程序中绘制 HTML 模板。事件参数包括e.DrawHtml方法。大多数 DevExpress WinForms UI 控件都引入了此增强功能。

 

HTML

<div>

    <div>${ProcName}</div>

    <div>

        <div>${ProcBaseFrequency}</div>

        <div>${RamMemorySize}</div>

        <div>${VidTrademark} {VidMemorySize}</div>

    </div>

    <div>${ModelPrice}</div>

    <div id="btn-add" dx-class="{Added:added}">${AddButtonCaption}</div>

</div>

 

CSS

.container {

    text-align:center;

    padding-top:18px;

}

.cpu-name {

    font-size:14px;

    font-weight:bold;

}

.label {

    display:inline-block;

    background-color:@DisabledText/0.3;

    padding:4px;

    border-radius:4px;

}

.price {

    margin-top:6px;

    margin-bottom:6px;

    font-size:18px;

}

.btn-add {

    display:inline-block;

    background-color:@HighlightAlternate;

    color:@White;

    padding:8px;

    border-radius:18px;

    font-weight:bold;

    cursor:pointer;

}

.added{

    background-color:@Green;

}

 

C

void OnCustomDrawRecordHeader(object sender, Events.CustomDrawRecordHeaderEventArgs e) {

    // ...

    e.DrawHtml(headerTemplate, htmlCtx, (args) => {

        args.InteractivityKey = dataSourceRowIndex;

        bool isAddedToCart = orders.Contains(dataSourceRowIndex);

        args.SetFieldValue("Added", isAddedToCart);

        args.SetFieldValue("AddButtonCaption", isAddedToCart ? "ADDED TO CART" : "ADD TO CART");

    });

}

 

绘制 HTML 模板 - WinForms ListBox, DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

可视化数据集合

我们新的 <dx-collection>标签为集合中的每个元素呈现一个模板。

 

HTML

<template id="member-template">

    <div>${Initials}</div>

</template>

...

<dx-collection Items="${Members}" ItemTemplate="member-template"></dx-collection>

可视化数据集合 - WinForms 控件、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

HTML 模板集合

我们创建了一个新的HtmlTemplateCollection组件——一个外部模板存储。添加到此集合的 HTML CSS 模板可由不同的 UI 控件使用。

 

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

CSS 样式选择器

您现在可以有条件地直接在 HTML 标记中应用样式。与在代码隐藏中处理事件相比,使用 HTML 标记更容易、更快捷。

 

使用我们新的dx-class属性来指定 CSS 选择条件。

 

我们支持以下语法选项:

 

HTML

<!-- Boolean data field -->

<div dx-class="{IsUrgent: urgent, normal}">

    <!-- Applies the 'active' class if the IsActive property is set to true. -->

    <img dx-class="{IsActive: active}" />

 

    <!-- Hides the element if the IsVisible property is set to true. -->

    <img dx-class="{IsVisible: , hidden}" />

</div>

 

<!--

Enumeration data field.

The 'red' class corresponds to the first element.

The 'green' class corresponds to the second element, and so on.

-->

<div dx-class="{Color: red, green, blue}">

...

</div>

 

<!--

Enumeration data field.

Class names should exactly match enumeration values.

-->

<div dx-class="{State}">

...

</div>

 

<!-- A string data field that matches the class name -->

<div dx-class="{ClassName}">

...

</div>

您可以在一个条件中应用多个类。当然,您可以同时使用静态类和条件类。

 

HTML

<div dx-class="{IsUrgent: urgent highlight, normal}">

...

</div>

 

CSS 样式选择器 - WinForms TileView、DevExpress

 

运行演示   

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

Colorize SVG - 'Fill' CSS 属性支持

< img > 标签现在支持fill属性。使用此属性设置 SVG 图像的颜色。此设置会覆盖表示属性<path fill="#fff" ...="" />和内联样式(例如,<path style="fill: #fff;" ...="" />)。

 

CSS

img {

    fill: Gray;

}

    img:hover {

        fill: Green;

    }

    img:active {

        fill: LightGreen;

}

 

HTML

<img src="my-svg-image" />

 

着色 SVG - WinForms HTML 和 CSS 模板,DevExpress

 

 

位置和 Z-index 属性

我们的 HTML CSS 引擎现在支持位置和z-index CSS 属性 - 在模板中管理 HTML 元素布局的宝贵工具。

 

position属性指定元素在模板中的位置。此属性接受以下值:“静态”、“相对”、“绝对”和“固定”。元素的“top”、“right”、“bottom”和“left”属性决定了它的最终位置。

 

 

Position CSS 属性 - WinForms 控件、DevExpress

 

 

z-index属性指定定位的 HTML 元素的 z 顺序。使用此属性将层中的元素放置在彼此之上。具有较大 z-index 的重叠元素覆盖具有较小 z-index 的元素。

 

z-index属性仅适用于“position”属性明确设置为“absolute”、“fixed”或“relative”的元素。

 

 

Z-index CSS 属性 - WinForms 控件、DevExpress

 

 

布局容器

堆栈和布局面板 - 皮肤相关的缩进和分隔符

我们添加了一个新的UseSkinIndents选项。启用后,堆栈和表格面板使用当前活动皮肤中的以下设置:

• 面板填充;

• 控制面板单元内的边距;

• 水平和垂直分隔符宽度。

使用面板的Padding和控件的Margin属性来指定自定义缩进。

 

您还可以创建水平和垂直分隔符以将 UI 控件分组。要将控件分组,请创建一列或一行,并将其Style属性设置为“Separator”。

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

调度器

资源标头 - HTML CSS 支持

 

资源标头的 HTML 模板 - WinForms Scheduler、DevExpress

 

运行演示  

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

显示弹出菜单 - 新事件参数

我们向PopupMenuShowingEventArgs类 添加了新参数。此类为PopupMenuShowing事件提供数据。新论点包括:

• Allow - 获取或设置是否启用弹出菜单。允许您根据需要禁用弹出菜单。

• HitInfo - 标识单击的菜单 UI 元素。

• MenuType - 获取弹出菜单类型。

• Point - 获取用于调用弹出菜单的位置。

 

树列表

使用向右/向左箭头键展开/折叠节点

用户现在可以使用向右和向左箭头键展开/折叠节点。这是具有一列的 WinForms TreeList 控件中的默认行为(在TreeView 模式下)。

 

 

预览部分中的蒙皮填充和可配置缩进

我们对 TreeList 外观进行了细微改进,以保持所有 DevExpress“基于网格”的 UI 控件的外观和感觉一致性(向预览部分显示的内容添加了填充)。

 

我们还添加了一个新的PreviewIndent属性。此属性允许您为预览部分中显示的内容指定左侧水平偏移量。

 

TreeList 预览部分中的蒙皮填充和可配置缩进 - WinForms 控件、DevExpress

 

运行演示   

要执行此演示,您必须先安装 DevExpress WinForms 产品库

 

BandPositionChanged 事件

BandPositionChanged事件在波段改变其位置或可见性时触发 :

• 用户拖动带并将其放到不同的位置。

• 用户将乐队隐藏或拖动到自定义表单或从自定义表单中拖动乐队。

• 带可见性已在代码中更改。

 

辅助功能

我们继续改进整个 WinForms 产品线的辅助功能和 UI 自动化。在 v22.2 中,我们增强了对辅助工具的支持,并支持 WinForms 垂直网格、属性网格和导航栏控件中的 UI 自动化模式。我们还优化了我们的控件,以更好地消耗内存和边界检测。


联系我们

周一至周日 8:00-23:00

免费热线

023-62585653

张经理:13082556879

罗经理:17558866126

许经理:13057566525

开发外包

ERP-一体化

小程序

企业微信客服

版权所有:重庆庚乾信息科技有限公司 ©2025 Gengqian Information Technology Co., Ltd. 渝ICP备2022008063号-2 渝公网安备50010702505508

版权所有:重庆庚乾信息科技有限公司

©2025 Gengqian Information Technology Co., Ltd. 渝ICP备2022008063号-2 渝公网安备50010702505508