【问题标题】:Why won't my ListView SelectedItemTemplate show when selected?为什么我的 ListView SelectedItemTemplate 选择时不显示?
【发布时间】:2010-06-08 18:05:22
【问题描述】:

我在 asp.Net 中有一个数据绑定 ListView。我在 aspx 页面中同时使用了 ItemTemplate 和 SelectedItemTemplate。

在 .cs 页面中我有这个。我已经通过单步执行代码验证了 if 语句仅在应该的情况下才计算为真,并且设置了选定的索引。然而,HTML 输出好像所有项目都使用 ItemTemplate。

    int indexCounter = 0;
    protected void lvProducts_ItemDataBound(object sender, ListViewItemEventArgs e)
    {
        if (e.Item.ItemType == ListViewItemType.DataItem)
        {
            if (((DataRowView)e.Item.DataItem)["ID"].ToString() == Request.QueryString["id"])
            {
                lvProducts.SelectedIndex = indexCounter;
            }
            indexCounter++;
        }
    }

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: c# .net asp.net


    【解决方案1】:

    看看这个post

    “在 DataBinding 工作后的任何位置设置 SelectedIndex,您只是无法获得 SelectedItemTemplate。为此,您要么重新绑定数据;要么在 ListViewItem 上重新实例化 SelectedItemTemplate。请务必先清除 ListViewItem.Controls 集合!”

    【讨论】:

      猜你喜欢
      • 2020-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-18
      • 1970-01-01
      相关资源
      最近更新 更多