Highlight List View Objects 突出显示列表视图对象
In this lesson, you will learn how to format data that satisfies the specified criteria. For this purpose, the Conditional Appearance module will be added to the application. You will highlight the DemoTask objects whose Status property is not set to Completed. In addition, you will highlight the Priority property when it contains the High value.
在本课中,您将学习如何设置满足指定条件的数据的格式。为此,条件外观模块将添加到应用程序中。您将突出显示其 Status 属性未设置为"已完成"的演示任务对象。此外,当"Priority"属性包含"高"值时,将突出显示该属性。
- Add the Conditional Appearance module to your MySolution.Module project. For this purpose, double-click the Module.cs (Module.vb) file, located in the MySolution.Module project. The Module Designer will be invoked. In the Toolbox, navigate to the DX.19.2: XAF Modules tab, and drag the ConditionalAppearanceModule item from this tab to the Designer's Required Modules section, as shown below.
- 将条件外观模块添加到 MySolution.模块项目中。为此,双击位于 MySolution.module 项目中的Module.cs(Module.vb)文件。将调用模块设计器。在工具箱中,导航到 DX.19.2:XAF 模块选项卡,并将条件外观模块项从此选项卡拖动到"设计器的必需模块"部分,如下所示。

- Rebuild your solution after you have made changes in the Module Designer.
To declare a conditional appearance rule for the DemoTask class, apply the AppearanceAttribute attribute to this class. As the first parameter, specify the Appearance Rule identifier (e.g., "FontColorRed"). Then, specify the following parameters.
在模块设计器中进行更改后重新生成解决方案。
要声明 DemoTask 类的条件外观规则,请将"外观属性"属性应用于此类。作为第一个参数,请指定外观规则标识符(例如,"FontColorRed")。然后,指定以下参数。
| Parameter | Settings |
|---|---|
| Target UI elements to be affected by the rule. | Set the AppearanceAttribute.AppearanceItemType parameter to "ViewItem" and the AppearanceAttribute.TargetItems parameter to "*". This means that the rule generated from the attribute will affect all DemoTask properties displayed in the current View. |
| Conditions under which the rule must be in effect. | Set the AppearanceAttribute.Context parameter to "ListView" and the AppearanceAttribute.Criteria parameter to "Status!='Completed'". In this instance, the rule generated from the attribute will be in effect in a DemoTask List View for the object whose Status property is not set to Completed. |
| Conditional appearance applied by the rule. | Set the AppearanceAttribute.FontColor named parameter to "Red". |
The following code demonstrates the applied attribute and its parameters to the DemoTask class, that was declared in BusinessObjects\DemoTask.cs (DemoTask.vb) file.
以下代码演示了在 BusinessObjects_DemoTask.cs (DemoTask.vb) 文件中声明的 DemoTask 类所应用的属性及其参数。
using DevExpress.ExpressApp.ConditionalAppearance;
// ...
[Appearance("FontColorRed", AppearanceItemType = "ViewItem", TargetItems = "*", Context = "ListView",
Criteria = "Status!='Completed'", FontColor = "Red")]
public class DemoTask : Task {
// ...
}
Note 注意
The Criteria value must be specified using the Criteria Language Syntax.
必须使用"条件语言语法"指定条件值。
Apply the AppearanceAttribute attribute to the DemoTask class' Priority property. As the first positional parameter, specify the Appearance Rule identifier (e.g., "PriorityBackColorPink"). Then, specify the following parameters.
- 将外观属性应用于演示任务类的"优先级"属性。作为第一个位置参数,请指定外观规则标识符(例如,"优先级回颜色粉红")。然后,指定以下参数。
Specify the target UI elements to be affected by the rule
Set the AppearanceAttribute.AppearanceItemType parameter to "ViewItem". This means that the rule generated from the attribute will affect the Priority property displayed in the current View.
- 指定要受规则影响的目标 UI 元素
将外观属性.外观项目类型参数设置为"查看项目"。这意味着从该属性生成的规则将影响当前视图中显示的"优先"属性。 Specify the conditions under which the rule must be in effect
Set the AppearanceAttribute.Context parameter to "Any" and the AppearanceAttribute.Criteria parameter to "Priority=2". In this instance, the rule generated from the attribute will affect the Priority property when it is set to 2 (High) in any DemoTask View.
- 指定规则必须生效的条件
将"外观属性.上下文"参数设置为"任意",将"外观属性"标准参数设置为"优先级{2}"。在这种情况下,从该属性生成的规则将影响"优先"属性,当它在任何演示任务视图中设置为 2(高)。 Specify the conditional appearance applied by the rule
Set the AppearanceAttribute.BackColor parameter to "255, 240, 240".
- 指定规则应用的条件外观
将外观属性.BackColor 参数设置为"255、240、240"。
The following code demonstrates the applied attribute and its parameters.
以下代码演示应用的属性及其参数。
public class DemoTask : Task {
// ...
[Appearance("PriorityBackColorPink", AppearanceItemType = "ViewItem", Context = "Any",
Criteria = "Priority=2", BackColor = "255, 240, 240")]
public Priority Priority {
// ...
}
// ...
}
Run the WinForms or ASP.NET application. The DemoTask List View and Detail View data will be highlighted, as demonstrated in the following image.
运行 WinForms 或ASP.NET应用程序。演示任务列表视图和详细信息视图数据将突出显示,如下图所示。

Note 注意
Appearence Rules that are declared in code are available in the Model Editor. To access them, you can run the Model Editor for the MySolution.Module project. Navigate to the BOModel | DemoTask | AppearanceRules node. This node has two child nodes (FontColorRed and PriorityBackColorPink) that are generated automatically from Appearance attributes applied to the DemoTask class and the DemoTask.Priority property. You can create new Appearance Rules directly in the Model Editor by adding child nodes to the AppearanceRules node.
在代码中声明的显示规则在模型编辑器中可用。要访问它们,您可以运行 MySolution.模块项目的模型编辑器。导航到 BOModel |演示任务 |外观规则节点。此节点有两个子节点(FontColorRed 和优先级BackColorPink),它们从应用于 DemoTask 类和 DemoTask.Priority 属性的外观属性自动生成。通过将子节点添加到"外观规则"节点,可以直接在模型编辑器中创建新的外观规则。
You can see the changes made in the lesson in the DemoTask.cs (DemoTask.vb) file located in the MainDemo.Module project of the MainDemo solution. The MainDemo application is installed in %PUBLIC%\Documents\DevExpress Demos 19.2\Components\eXpressApp Framework\MainDemo by default. The ASP.NET version is available online at http://demos.devexpress.com/XAF/MainDemo/
您可以在 mainDemo 解决方案的 MainDemo.模块项目中的DemoTask.cs (DemoTask.vb) 文件中看到本课中所做的更改。主演示应用程序安装在%PUBLIC%\Documents\DevExpress Demos 19.2\Components\eXpressApp Framework\MainDemo by default. The ASP.NET version is available online at http://demos.devexpress.com/XAF/MainDemo/
.
Highlight List View Objects 突出显示列表视图对象的更多相关文章
- Apply Grouping to List View Data 将分组应用于列表视图数据
This lesson will teach you how to apply grouping to List View data. For this purpose, you will group ...
- Change Field Layout and Visibility in a List View 在列表视图中更改字段布局和可见性
This lesson will guide you through the steps needed to select columns displayed in the List View. Fo ...
- [Swift通天遁地]六、智能布局-(2)视图对象的尺寸和位置相对约束
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- Display a Detail View with a List View 主子视图-列表视图与详细信息视图同时显示
In this lesson, you will learn how to display a Detail View together with a List View. For this purp ...
- How to: Display a List of Non-Persistent Objects in a Popup Dialog 如何:在弹出对话框中显示非持久化对象列表
This example demonstrates how to populate and display a list of objects that are not bound to the da ...
- Make a List View Editable 使列表视图可编辑
In this lesson, you will learn how to make a List View editable. For this purpose, the DemoTask List ...
- Add a Preview to a List View将预览添加到列表视图
In this lesson, you will learn how to show a preview section in a List View's grid. For this purpose ...
- Android列表视图(List View)
Android列表视图(ListView) ListView是一个显示滚动项列表的示视图组(viewgroup),通过使用适配器(Adapter)把这些列表项自动插入到列表中.适配器比如从一个数组或是 ...
- .NET MVC+ EF+LINQ 多表联查VIEW显示列表
1.VIEW 页面显示代码 <link href="~/Content/bootstrap.css" rel="stylesheet" /> < ...
随机推荐
- 多线程之NSOperation小结
一.NSOperation 抽象类 NSOperation 是一个"抽象类",不能直接使用.抽象类的用处是定义子类共有的属性和方法. NSOperation 是基于 GCD 做的面 ...
- wait notify notifyAll await signal signalAll 的理解及示例
从常见的一道面试题开始,题目的描述是这样子的: 有三个线程分别打印A.B.C,请用多线程编程实现,在屏幕上循环打印10次ABCABC- 网上大都教了你怎么去实现,其实我也写过一篇 https://bl ...
- luogu P1722 矩阵 II
题目背景 usqwedf 改编系列题. 题目描述 如果你在百忙之中抽空看题,请自动跳到第六行. 众所周知,在中国古代算筹中,红为正,黑为负-- 给定一个1*(2n)的矩阵(usqwedf:这不是一个2 ...
- yarn 与 npm 比较
一.首先需要了解的命令 npm install === yarn —— install 安装是默认行为. npm install taco --save === yarn add taco —— ta ...
- go基础之并发
1.Goroutines是轻量级线程 2.channels的同步通信 1.Goroutines是轻量级线程 go语句在单独的线程中运行一个函数. 你可以使用go语句启动一个新的执行线程,即一个goro ...
- 学习go语言第二天-变量、常量
编写测试程序 源码文件以_test结尾;例如:xxx_test.go 测试方法名以Test开头;例如:func TestXXXXX(t *testing.T){} 实现斐波那且数列 package f ...
- Koa - 初体验(写个接口)
前言 不会node.js的前端不是一个好前端! 这几年node.js确实是越来越火了,好多公司对node.js都开始有要求.虽说前端不一定要会后端,但想要成为一个优秀的前端,node.js是必经之路. ...
- 使用iCamera 测试AR0331 300w高分辨率摄像头小结
使用iCamera 测试AR0331 300w高分辨率摄像头小结 先看下sensor特性 分辨率最高可达:2048*1536=300w像素 1080p帧率最高可达60fps 本次使用usb2,帧率14 ...
- telnet远程登陆
这篇文章是第二次更新,内容为telnet远程登陆路由器,非常简单.直接进入正题,在网络配通的情况下,为路由器设置登陆密码和管理员密码,就可以通过pc机远程管理路由器或交换机. 目的: 网络拓扑图如下, ...
- 浅析Java常量池
Java常量池 Java常量池其实分为两种:静态常量池和运行时常量池 1.静态常量池 所谓静态常量池,即*.class文件中的常量池,class文件中的常量池不仅仅包含字符串(数字)字面量,还包含类. ...