题
在 他们的文件 阶段说,有一种方法,以禁用分类为具体列通过使用AllowSorting财产。我正在看 阶段.网。用户界面。GridColumn成员 并没有AllowSorting财产。有一个排序财产,但其保护必须复盖.那么我使用关闭的排序用于特定的专栏?
有一个AllowSorting财产上GridBoundColumn但在这种情况下,我使用的GridTemplateColumn.有没有办法关闭的排序上GridTemplateColumn?
解决方案 2
好,我知道期望的效果,我关掉通过GridTemplateColumn的SortingExpression属性设置为空白排序。
Grid.Columns.FindByUniqueName("Type").SortExpression = string.Empty;
这看起来像一个黑客攻击。为什么没有一个明确的财产关闭排序?那好吧。这工作。
如果你知道一个更好的办法,让我知道。
感谢。
其他提示
在AllowSorting属性可以从在Visual Studio中源/标记图。例如(简化的):
<tr:RadGrid>
<MasterTableView>
<Columns>
<tr:GridBoundColumn DataField="field" HeaderText="Description"
AllowSorting="false" />
</Columns>
</MasterTableView>
</tr:RadGrid>
我不知道这对你的作品?我没有从我的实例化网格代码隐藏文件还,所以如果这是你在做什么,我不能轻易地帮助你。但上述工作对我来说。
修改强>
阿那不是原来的问题清楚,您正在使用的GridTemplate列。正如你现在正在使用的SortExpression属性,不使用你的标记工作相同的属性?所以:
<tr:RadGrid>
<MasterTableView>
<Columns>
<tr:GridTemplateColumn HeaderText="Description" DataField="field"
SortExpression="">
<!-- template here etc. -->
</tr:GridTemplateColumn>
</Columns>
</MasterTableView>
</tr:RadGrid>
阶段现在有一个新的财产称为HeaderButtonType(上存在一个模板,列太!) 这可以被设定为"无"呈现的一个标签,而不是一个linkbutton列标题的文字。
下面是示出如何禁用分拣特定列的例子。
请注意在网格水平AllowSorting属性(对于所有列)。
然后,在列集合,请注意它是如何被关闭用于该特定列。
<telerik:RadGrid ID="RadGrid1" runat="server" AllowSorting="True">
<HeaderContextMenu>
<CollapseAnimation Duration="200" Type="OutQuint" />
</HeaderContextMenu>
<MasterTableView>
<RowIndicatorColumn>
<HeaderStyle Width="20px" />
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px" />
</ExpandCollapseColumn>
<Columns>
<telerik:GridBoundColumn AllowSorting="False" UniqueName="column">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
<FilterMenu>
<CollapseAnimation Duration="200" Type="OutQuint" />
</FilterMenu>
</telerik:RadGrid>
有关TemplateColumns,我会尝试关闭在电网级排序和简单地启用它上所需要的列。这样一来,你就不必做了TemplateColumn中任何事情,因为它会默认被禁用。
您总是可以,如果你使用的是GridTemplateColumn带标签作为标题,而不是一个链接按钮提供自己的HeaderTemplate中。答:我们一些额外的工作,但能正常工作。如果你要禁用排序为所有GridTemplateColumns那么你的“黑客”将是最好的。
如在 Telerik的文档表示:
如果您希望禁用分拣只有特定列,你可以列的IsSortable属性设置为false:
<telerik:GridViewColumn IsSortable="False" />