新增格式化单元格数据功能-dotNetFlexGrid更新1.24版本,快速的设置您的表格数据的不同样式;现在开始扔掉你的Asp.net GridView吧。
时间:2010-09-10 来源:华磊
2010-9-10 v1.24beta
- 修复insertNewRow()、updateRowData()方法处理ID包含“#”时的BUG,调整了若干需要进行Jquery转义的地方。
- 新增Js方法containsRowId ()用于检查指定ID的行是否存在。
- 新增格式化处理,现在可以通过指定列的格式化方法来处理展现数据了。
- 更新演示项目,增加根据状态字段不同来展现不同的数据和单元格颜色。
更新说明文档,请访问:JQuery FlexiGrid的asp.net完美解决方案:dotNetFlexGrid控件完整Api说明文档(更新至1.24 2010-9-10)
更新演示程序,请访问:快速指南中提供TestStockFormIn.aspx,演示在表单中使用dotNetFlexGrid储存客户录入的数据并作为表单提交
列的展现模板:轻松在表格中显示文本框、按钮等任意东西
InitConfig初始化时针对列配置增加了一个itemTemplate属性,该属性提供了当前列的展现模板设定,您可以在该属性中提供几乎任何Html内容(当然,请保证不会破坏表格结构),使用简单的模板语法“[@字段名]”来展现您所希望的格式,比如说:
“<input id=’ [@Guid]’ type=’text’ value=’[@String1]’ />”
上述语法将在指定的列展现一个以该行的Guid字段的值给出的Id的文本框,该文本框将展示String1字段的值。
格式化列:在表格中根据上下文数据来控制单元格的内容、颜色等。
1.24版本中,我们为控件加入了格式化的处理机制,现在DataHandler的返回值中增加了一个名为FieldFormator的配置项,您可以在这里针对列进行具体的格式化处理,如下示例,为返回的数据增加了一个针对列名为ProductState的处理器,我们将不同的状态使用颜色区分,并显示不同的文本。
---------------------------------------------------------------------------------------------------------------------
dotNetFlexGrid.FieldFormatorHandle proc=delegate(string value)
{
switch (value.ToLower())
{
case "0":
return "<span style='color:red'>禁用</span>";
case "1":
return "<span style='color:Blue'>下架</span>";
case "2":
return "<span style='color:Gray'>正常销售</span>";
case "3":
return "已售空";
}
return "";
};
result.FieldFormator.Register("ProductState", proc);
---------------------------------------------------------------------------------------------------------------------
dotNetFlexGrid支持的三种列类型:数据不一定要来源于数据库
截止到当前版本,控件支持三种不同来源的列类型:
l 普通列
最普通的一种列的形式,直接从DataHandler的返回值中获取并展示数据,不进行任何额外处理。
l 模板列
配置了展现模板的列,该列数据将根据模板中指定的格式生成数据,该列实际可以在数据源存在,也可以完全不存在,由运行时决定实际的展示内容。
l 格式化列
指定了格式化处理器的列,该列数据将调用格式化方法进行处理后返回,如果格式化列也存在模板配置,则将继续应用模板中的配置产生新的数据,跟模板列一样,该列实际可以在数据源存在,也可以完全不存在,由运行时决定实际的展示内容。