0

我知道这个问题已经在这里发布了,但我们没有找到真正的解决方案。

我已将我的 ListView 绑定到 SqlDataSource,并且我想在 LayoutTemplate 中创建的视图中的控件中写入一些文本,具体取决于返回的行的某些属性。

显然,我正在使用 ItemDataBound 事件来提供我的项目,但这不是重点。

自发的解决方案是绑定 ListView.DataBound 事件并访问原始数据源(DataTable?)并进行所需的计算。

我检查了 Items 属性,尽管它不为空,但相关的 DataItem 属性为空。

你有什么建议吗?

我能想到的唯一解决方法是在 ItemDataBound 事件中执行计算并将结果累积到一些私有字段中。但它真的很难看,并且更难获得一些所需的值。

非常感谢。

4

1 回答 1

0

在 ItemDataBound 中,您应该能够通过 DataSource 属性访问 Listview 的数据源(您可能需要将其转换为 DataTable):

protected void Listview1_ItemDataBound(object sender, ListViewItemEventArgs e)
{
    DataTable sourceData;

    sourceData = (DataTable)Listview1.DataSource;

    // sourceData is a DataTable, you can run .Compute or whatever you need
}
于 2010-09-22T13:36:13.797 回答