2011-12-28 8 views
0

ASP.NET Ajax用のTalerikのRadGridに基本的なものが欠けているような気がします。Telerik DataGrid:クライアント側で列グループを展開する

私は、列グループを持つDataGridを持っています。各グループのヘッダー全体を小さな矢印の代わりに展開/折りたたむリンクにしたい場合を除いて、すべてうまく動作します。

ヘッダーを変更してJavaScript関数を呼び出すリンクに変更しましたが、グリッドを展開するためのjavascript権限を取得できません。

ビットの周りにプレイした後、私はjavascriptのためにこれを持っている:ここ

function ExpandGroup(index, element) 
{ 
    $find('LondonGrid').get_masterTableView().get_dataItems()[0].set_expanded(true); 
} 
  • インデックスグループ(0ベース)、それが正しくて を渡されたの指標です。
  • 要素はDOMWindowです。

関数のコードは明らかに間違っていますが、最初のデータ項目を展開するだけです。私が望むのは、グループインデックスに属するすべてのDataItemを見つけて展開する方法です。しかし、私はそれを行う方法を見つけることができません。

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は非常に錆びたので、任意の助けをいただければ幸いです。

ヘッダー内のリンクは、ItemDataBoundイベントハンドラを変更することによって追加されます。

編集:私たちは2011 Q2バージョンを使用していることを言いました。

答えて

0

ヘッダーに拡張矢印ボタンがあり、それをクリックする醜い醜いハックが見つかりました。 非常に壊れやすく、私は自分自身を答えとして推奨することはできません。

function ExpandGroup(element) { 
    element.parentElement.parentElement.parentElement.children[0].children[0].click(); 
} 
関連する問題