关于ListBox.DataBinding方法的问题。我正在加载一个带有DataRows数组对象的列表框,我想检查每个DataRow元素的列值是否为true / false。如果列值为true,则修改当前listBox.ListItem对象的样式。下面是一些示例代码。:
System.Data.DataRow[] rows = Data.SchoolDetails.Select(filter);
lstBox.DataBinding += new EventHandler(lstBox_DataBinding);
lstBox.DataSource = rows;
lstBox.DataTExtField = "Value";
lstBox.DataValueField = "ValueCode";
lstBox.DataBind();
static void lstBox_DataBinding(object sender, EventArgs e)
{
ListBox l = (ListBox) sender;
}
答案 0 :(得分:1)
你无法用ListBox真正做到这一点。也许您应该使用ListView,它支持每个项目的ItemDataBinding
事件。
答案 1 :(得分:0)
最佳答案可能是您在上述评论中包含的答案。
作为替代方案,我可以循环遍历DataRow数组并按此方式执行,并通过执行以下操作设置样式:lstBox.Items.Add(new ListItem(“”)。Attributes.CssStyle.Add(HtmlTextWriterStyle.FontWeight) , “胆大”));。谢谢你的帮助。 - 布兰登迈克尔亨特
这正是我要做的。