在GridView中给定行的模板中动态生成内容,如何?

时间:2010-10-29 13:36:37

标签: c# asp.net gridview dynamic-content

我在SQL服务器上有这样的数据:

ItemID Quantity
  1       3
  2       0
  3       7

我想使用模板在GridView中显示该数据。问题是,我想显示文字而不是数量:

当数量>时,绿色文字说“库存商品” 0

当数量= 0时,红色文字说“项目不可用”

我的问题是,我应该如何实现这样的功能?如何动态生成此类HTML标记并将其添加到模板中?

感谢您的时间。

1 个答案:

答案 0 :(得分:0)

您可以检查行数据绑定事件中的值,并在模板中设置标签。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.rowdatabound.aspx


这假设您的gridview绑定到数据表(如果它绑定到对象数组可能会失败,例如,我不确定):

//To get bound data
DataRowView rowView = (DataRowView)e.Item.DataItem;
object value = rowView["columnName"];

//To get a control
TextBox txtName = (TextBox)e.Item.FindControl("txtName");