Razor 如何在剑道网格隐藏选项中表示条件

Razor 如何在剑道网格隐藏选项中表示条件,razor,kendo-ui,kendo-grid,Razor,Kendo Ui,Kendo Grid,我们正在使用MS Identity Framework进行基于角色的授权。在我们的应用程序中,角色实际上是访问或修改应用程序中特定选项卡的“权限”。该应用程序由一个主视图组成,其中有多个局部视图,每个局部视图表示一个选项卡。这些选项卡包含可编辑的剑道网格 用户可以拥有访问选项卡的“仅查看”权限或“查看和编辑”权限。具有选项卡查看和编辑权限的用户可以通过“操作”列查看网格并编辑其中的任何行。对给定选项卡具有“仅查看”权限的用户应在该选项卡中查看网格,而不显示“操作/命令”列 我们已经在通过控制器中

我们正在使用MS Identity Framework进行基于角色的授权。在我们的应用程序中,角色实际上是访问或修改应用程序中特定选项卡的“权限”。该应用程序由一个主视图组成,其中有多个局部视图,每个局部视图表示一个选项卡。这些选项卡包含可编辑的剑道网格

用户可以拥有访问选项卡的“仅查看”权限或“查看和编辑”权限。具有选项卡查看和编辑权限的用户可以通过“操作”列查看网格并编辑其中的任何行。对给定选项卡具有“仅查看”权限的用户应在该选项卡中查看网格,而不显示“操作/命令”列

我们已经在通过控制器中基于角色的身份验证来限制网格中与命令列相关的功能。但是,我们也希望从视图中删除对特定网格只有查看权限的用户的列。我正在考虑使用Hidden()选项来实现这一点

根据Telerik的说法,剑道网格可以选择使用隐藏(“条件”)有条件地隐藏列。但是,除了使用显式布尔值之外,我找不到使用该条件的示例

有人能举例说明在网格中绑定命令列时用于编写更明确条件的语法(例如,如果ViewBag[“clientRole”]为1)(例如:

c、 命令(Command=>{Command.Edit();Command.Destroy();})。隐藏(“条件”)


遗憾的是,任何地方都没有条件语法的文档或示例。

此选项只接受布尔值。请详细说明您的确切配置,好吗

编辑: 您可以通过简单地将ViewData(或传递给此选项的值)强制转换为bool类型来实现这一点:

控制器:

ViewData["hideColumns"] = true;
网格:


此选项只接受布尔值。请详细说明您的确切配置,好吗

编辑: 您可以通过简单地将ViewData(或传递给此选项的值)强制转换为bool类型来实现这一点:

控制器:

ViewData["hideColumns"] = true;
网格:


谢谢你的回复!我已经编辑了这个问题以添加更多的上下文。(顺便说一句,我们正在使用Razor)非常感谢您的回复,Valdimir!如果要在隐藏条件中创建更复杂的条件,我正在寻找一些可接受语法的定义。我们使用了与您类似的方法,在网格外创建一个布尔值,然后直接在网格中使用它。这就行了。谢谢!我很高兴这有助于p你。你可以在不同的选项中使用这种方法-只需检查选项接受的类型。谢谢你的回答!我已经编辑了这个问题以添加更多的上下文。(顺便说一句,我们正在使用Razor)非常感谢您的回复,Valdimir!如果要在隐藏条件中创建更复杂的条件,我正在寻找一些可接受语法的定义。我们使用了与您类似的方法,在网格外创建一个布尔值,然后直接在网格中使用它。这就行了。谢谢!我很高兴这有助于p您可以在网格中使用这种方法来处理各种选项-只需检查选项接受的类型即可。