2011-12-28 83 views
0

我觉得我失去了基于Talerik的RadGrid for ASP.NET Ajax的东西。我有一个具有列组的数据组。一切工作正常,除了我想每个组的整个标题是一个链接,扩大/折叠组,而不是只是小箭头。Telerik DataGrid:在客户端展开列组

我修改了标题以将其更改为调用JavaScript函数的链接,但是我无法获得JavaScript右键来扩展网格。

张望了一下打后,我有这样的JavaScript的:这里

function ExpandGroup(index, element) 
{ 
    $find('LondonGrid').get_masterTableView().get_dataItems()[0].set_expanded(true); 
} 
  • 指数是组(0为主),它是通过 通过正确的索引。
  • 元素是DOMWindow。

函数中的代码显然是错误的,它所做的只是展开第一个数据项。我想要的是一种查找属于组索引并扩展它们的所有DataItem的方法。但我找不到办法。

标题中的链接是通过修改ItemDataBound事件处理程序补充说:

protected void LondonGrid_ItemDataBound(object sender, GridItemEventArgs e) 
{ 
    var headerItem = e.Item as GridGroupHeaderItem; 
    if (headerItem != null) 
    { 
     string html = string.Format("<a href='javascript:ExpandGroup({0}, this)'>{1}</a>", 
            headerItem.GroupIndex, 
            headerItem.DataCell.Text); 
     var control = new LiteralControl(html); 
     headerItem.DataCell.Controls.Add(control); 
    } 
} 

我是新来的Telerik控制,和我的asp.net和javascript是很生疏所以任何帮助,将不胜感激。

编辑:我忘了提及我们正在使用2011年第二季度版本。

回答

0

我发现了一个丑陋的丑陋黑客,在标题中找到扩展箭头按钮并点击它。 虽然非常脆弱,我不能让自己推荐这个答案。

function ExpandGroup(element) { 
    element.parentElement.parentElement.parentElement.children[0].children[0].click(); 
}