是否可以在Checkboxlist项目中放入另一个元素(按钮)?

时间:2009-12-09 18:33:52

标签: c# .net asp.net visual-studio-2008 asp.net-ajax

我有一个通过DataSource填充的CheckBoxList(每个都有来自数据库的值,所以我不能对其中的任何内容进行硬编码),我需要在右侧添加一个按钮以获取详细信息。触发某个事件时CheckBoxList的特定项目。

我能这样做吗?如何?

2 个答案:

答案 0 :(得分:1)

CheckBoxList中的每个项目都是ListItem个对象。这些不会从Control继承,因此它们没有自己的ControlCollection属性。这意味着您无法将LinkBut​​ton或Button添加到项目中。

如果它基于Control对象,您就可以挂钩OnDataBound的{​​{1}}事件,并遍历这些项目,直到找到一个需要按钮。从那里,您可以将控件(按钮)添加到单个项目的CheckBoxList集合中。但是你对ListItem的限制非常有限,因为它没有这个功能。

细节按钮有什么作用?如果它只是一个客户端按钮,你可以将html注入到item.Controls的Text属性中,虽然我还没有验证这个有效:

ListItem

无论哪种方式它都不会很漂亮,你最好创建一个简单的用户控件。在控件中,您仍然可以使用CheckBoxList,但您可以动态地向UserControl添加HyperLink或Buttons。您可以使用CSS或其他方法在正确的位置布置按钮。

答案 1 :(得分:0)

如果你想这样做,你必须编写一个自定义用户控件。