ComponentOne Binding Expressions for WPF(代码转换器控件)
切勿使用 ComponentOne Binding Expressions™ for WPF 重新编写一个转换器。利用 C1Binding 丰富的内联表达式语法优势编写更干净的 XAML 并节省时间。连接字符串、计算公式甚至可以将 if/else 逻辑直接应用于绑定表达式,无需任何后台代码转换器。
功能&亮点
逻辑和算术运算符
在您的绑定中执行简单的逻辑和算术函数。您可以使用任意的通用逻辑运算符 (=, >, , >=, <=)、算术运算符 (+, -, *, /, ^),还可以使用括号将表达式分组。例如,“Amount * 8.5%” 返回 Amount 属性值的0.085倍:
EXCEL 函数
绑定表达式支持 Microsoft Excel 中可用函数的一个子集。您的 C1Binding 表达式可能包含逻辑函数(IF、AND、OR),数学函数(ABS、FLOOR,、LOG、 SUM),统计函数(AVERAGE、COUNT、MAX)和文本函数(CONCATENATE、TRIM、UPPER)。可在文档中查看支持函数的完整列表。
格式化值
C1Binding 对象有一个 StringFormat 属性,使用它设置绑定值的格式。例如,以下代码为计算表达式应用了货币格式:
条件化格式
假设您想给绑定值应用条件化格式。您可以使用 IF 函数执行条件逻辑。例如,以下的 XMAL 片段将大于1000的值格式化为粗体:
合并值
您可以使用文本函数完成常见的场景,如字符替换、大小写转换和合并多个值。例如,您可以使用 CONCATENATE 函数显示除了纳税总额外的总额:
使用引号而不破坏您的XMAL
可以在绑定表达式中使用引号而不破坏您的 XMAL。C1Binding 表达式以两种格式支持内联引用:& quot; 或使用竖线(|)。例如,上面的 XMAL 片段可被重写来增强可读性:
简洁富有表现力的XAML
使用 C1Binding 表达式,您的 XAML 会更加简洁并富有表现力,且百分之百独立。您不用在解决方案中引用任何的外部转换器。
解析和计算表达式
C1Binding 对象使用 C1CalcEngine 类解析和计算表达式。它是一个 public 类,单独使用它可将字符串解析为表达式对象,或解析字符串来求解生成的表达式。例如,您可以提供一个可计算的 TextBox,允许用户输出表达式 (ie, 4 + 16),当控件失去焦点时,使用 C1CalcEngine 的 Evaluate 方法计算它们。