|
[ASPX]
<form id="form1" runat="server" ...>
<ej:TreeGrid ID="TreeGrid" runat="server" ...>
<Columns>
<ej:TreeGridColumn HeaderText="Work Center" IsTemplateColumn="true" TemplateID="customColumnTemplate" Width="150" />
<ej:TreeGridColumn HeaderText="8-9" Field="W8W9" Width="100" />
//..
</Columns>
</ej:TreeGrid>
<asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="true" />
<script type="text/x-jsrender" id="customColumnTemplate">
<div style='height:20px;' unselectable='on'>
{{if !MasterWorkCenter}}
<div>
<div class='intend' style='height:1px;float:left;display:inline-block; width: {{:(level)*20}}px;'></div>
</div>
{{/if}}
{{if !hasChildRecords && MasterWorkCenter}}
<div>
<div class='intend' style='height:1px;float:left;display:inline-block;width: {{:(level)*20+(24)}}px;'></div>
</div>
{{/if}}
{{if !MasterWorkCenter && expanded}}
<div>
<div class='e-treegridexpand e-icon' style='float:left;display:inline-block;' unselectable='on'></div>
</div>
{{/if}}
{{if !MasterWorkCenter && !expanded}}
<div>
<div class='e-treegridcollapse e-icon' style='float: left;display:inline-block;' unselectable='on'></div>
</div>
{{/if}}
{{if WorkCenter}}
<div>
<div class='e-cell' style='display:inline-block;width:100%' unselectable='on'>{{:#data['WorkCenter']}}</div>
</div>
{{/if}}
</div>
</script>
//..
</form> |
|
[ASPX]
<form id="form1" runat="server" ...>
<ej:TreeGrid ID="TreeGrid" runat="server" Expanding="expanding" ...>
//..
</ej:TreeGrid>
<script>
function expanding(args) {
if (!args.data.hasChildRecords) {
args.cancel = true;
//server side method to get child records.
PageMethods.ExpandParentRow(args.data.item,
function (result) {
var treeObj = $("#TreeGrid").ejTreeGrid('instance'), index = args.model.updatedRecords.indexOf(args.data);
treeObj.selectRows(index);
var data = result;
for (var x = 0; x < data.length; x++) {
treeObj.addRow(data[x], ej.TreeGrid.RowPosition.Child); //Public method to add record as child.
treeObj.selectRows(index);
}
}
);
}
}
</script>
</form> |