IT命中WebDAV Ajax浏览器自定义列

时间:2015-07-13 13:56:20

标签: ithit-ajax-file-browser

我正在研究ItHit对Ajax浏览器控件的试用。到目前为止,当涉及到通过http协议提取文件时,它似乎非常敏感。

此时我想要做的是让详细信息视图从我的Excel工作簿中提取自定义属性。将获取自定义属性的C#代码连接到Ajax控件以显示正确值的最有效方法是什么?

1 个答案:

答案 0 :(得分:0)

创建自定义列的最简单方法是从WebDAV服务器返回自定义属性。在下面的示例中,服务器返回PriceNs:RetailPrice属性中的价格。

在客户端,您将定义自定义列并指定自定义属性名称和命名空间:

{
    Id: 'MyColumn1',
    CustomPropertyName: 'RetailPrice',
    CustomPropertyNamespace: 'PricesNs',
    Text: 'Retail Price',
    Width: '150px'
}

另一种方法是从为列指定的Formatter函数返回HTML。在这种情况下,您可以完全控制显示的内容。

您可以在本文中找到更多详细信息和示例:http://www.webdavsystem.com/ajaxfilebrowser/programming/grids_customization/

如果您的WebDAV服务器在IT Hit WebDAV Server Engine上运行,要返回所请求的属性,您必须实现IHierarchyItem.GetProperties方法(或其异步对应方法):

public IEnumerable<PropertyValue> GetProperties(IList<PropertyName> names, bool allprop)
{
    if (allprop)
    {
        return getPropertyValues();
    }

    List<PropertyValue> propVals = new List<PropertyValue>();
    foreach(PropertyName propName in names)
    {
        if( (propName.Namespace == "PricesNs") && (propName.Name == "RetailPrice") )
        {
            // Depending on the item you will return a different price,
            // but here for the sake of simplicity we return one price regerdless of the item
            propVals.Add(new PropertyValue(propName, "100"));
        }
        else
        {
            ...
        }
    }
    return propVals;
}