Asp.net &引用;行动“;数据读取器中的列

Asp.net &引用;行动“;数据读取器中的列,asp.net,repeater,Asp.net,Repeater,我的中继器中有一个“操作”列,显示用户可以为项目选择的操作。该列包含ASP.NET超链接或LinkButton控件。有些操作是基于用户是否在角色中,这是我通过编程确定的。我正在努力寻找在填充repeater时动态生成此列的最佳方法。现在我为每个控件的Visible属性指定了内联代码,但我觉得这太草率了,而且不太直接。使用占位符控件并在运行时填充会更好吗?其他人在这种情况下会使用什么样的方法?对基于模板的控件(如Repeater)应用任何类型的动态渲染的“正常”方法是处理ItemCreated或I

我的中继器中有一个“操作”列,显示用户可以为项目选择的操作。该列包含ASP.NET超链接或LinkButton控件。有些操作是基于用户是否在角色中,这是我通过编程确定的。我正在努力寻找在填充repeater时动态生成此列的最佳方法。现在我为每个控件的Visible属性指定了内联代码,但我觉得这太草率了,而且不太直接。使用占位符控件并在运行时填充会更好吗?其他人在这种情况下会使用什么样的方法?

对基于模板的控件(如
Repeater
)应用任何类型的动态渲染的“正常”方法是处理
ItemCreated
ItemDataBound
事件

在您的特定情况下,您可以检查该事件处理程序中的适当条件,并切换相关“操作”列的可见性

另外,Ian Quigley在其中发布了一段代码片段,应该可以作为您的一个很好的示例。阅读我自己的答案也会有所帮助,其中说明了如何在内联代码中使用可见性切换。

将任何类型的动态呈现应用于基于模板的控件(如
Repeater
的“正常”方法是处理
ItemCreated
ItemDataBound
事件

在您的特定情况下,您可以检查该事件处理程序中的适当条件,并切换相关“操作”列的可见性

另外,Ian Quigley在其中发布了一段代码片段,应该可以作为您的一个很好的示例。阅读我自己的答案也会有所帮助,它展示了如何在内联代码中使用可见性切换