在 Telerik NestedHierarchy 中隐藏父列
我有一个类似于下面的网格,我的还有一些数据列。
我想隐藏 ID 和 ParentID 列。但如果我隐藏 ID,展开/折叠功能将不复存在。所有行都像普通表中一样显示。
如何实现?
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1" OnColumnCreated="RadGrid1_ColumnCreated"
OnItemCreated="RadGrid1_ItemCreated" OnItemDataBound="RadGrid1_ItemDataBound" AutoGenerateColumns="false" OnPreRender="RadGrid1_PreRender">
<MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" AllowSorting="false"
DataKeyNames="OrderId, MasterId" Width="100%">
<SelfHierarchySettings ParentKeyName="MasterId" KeyName="OrderId" MaximumDepth="1" />
<Columns>
<telerik:GridTemplateColumn HeaderText="Order ID" UniqueName="OrderId" Display="false">
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Name">
<ItemTemplate><%# Eval("Name") %></ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Number">
<ItemTemplate><%# Eval("PassengerNumber") %></ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Total">
<ItemTemplate><%# Eval("Total") %></ItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
<ClientSettings AllowExpandCollapse="true" />
</telerik:RadGrid>
Display="false"
仍然将 OrderID 保留在 html 中,因此此功能应该可以工作,但事实并非如此。
有人有什么想法吗?
I have a grid similar to the below one, mine has a few more data columns.
I would like to hide ID and ParentID columns. But if I hide ID, Expand/Collapse functionality ceases to exist. All rows are displayed as in a normal table.
How do I achieve it?
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1" OnColumnCreated="RadGrid1_ColumnCreated"
OnItemCreated="RadGrid1_ItemCreated" OnItemDataBound="RadGrid1_ItemDataBound" AutoGenerateColumns="false" OnPreRender="RadGrid1_PreRender">
<MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" AllowSorting="false"
DataKeyNames="OrderId, MasterId" Width="100%">
<SelfHierarchySettings ParentKeyName="MasterId" KeyName="OrderId" MaximumDepth="1" />
<Columns>
<telerik:GridTemplateColumn HeaderText="Order ID" UniqueName="OrderId" Display="false">
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Name">
<ItemTemplate><%# Eval("Name") %></ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Number">
<ItemTemplate><%# Eval("PassengerNumber") %></ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Total">
<ItemTemplate><%# Eval("Total") %></ItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
<ClientSettings AllowExpandCollapse="true" />
</telerik:RadGrid>
Display="false"
still keeps OrderID in the html, so this functionality should work, but it doesn't.
Any idea anyone?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的。在仔细查看后面的代码后,我找到了解决方案。
就我而言,我希望“名称”列上有“展开-折叠”按钮。
为此:
在 .aspx 文件中,我必须将名称添加到 DataKeyNames 中。删除了 ID 和ParentId 网格列。为名称网格列添加了
UniqueName
属性,值为 Name。在后面的代码中,我在创建“展开-折叠”按钮时传递了“唯一列名”的“名称”。
Ok. I've found a solution after taking a closer look at code behind.
In my case, I wanted Expand-Collapse button on Name column.
For that:
In .aspx file, I had to add Name to DataKeyNames. Removed ID & ParentId grid columns. Added
UniqueName
attribute to Name gridcolumn with value Name.In code behind, I have passed Name for uniquecolumnname when creating Expand-Collapse button.