我正在研究ItHit对Ajax浏览器控件的试用。到目前为止,当涉及到通过http协议提取文件时,它似乎非常敏感。
此时我想要做的是让详细信息视图从我的Excel工作簿中提取自定义属性。将获取自定义属性的C#代码连接到Ajax控件以显示正确值的最有效方法是什么?
答案 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;
}