【发布时间】:2010-10-08 22:04:53
【问题描述】:
快速搜索后,我找不到这个看似简单的事情的答案。
如何在 Asp.Net ListView 中手动选择项目?
我有一个 SelectedItemTemplate,但我不想使用 asp:button 或 asp:LinkButton 来选择一个项目。我希望从 URL 完成。例如,像 QueryString。
我想象的方式是在 ItemDataBound 上,检查一个条件,然后将其设置为选中,如果为真,但我该怎么做呢?
例如:
protected void lv_ItemDataBound(object sender, ListViewItemEventArgs e) {
using (ListViewDataItem dataItem = (ListViewDataItem)e.Item) {
if (dataItem != null) {
if( /* item select condition */ ) {
// What do I do here to Set this Item to be Selected?
// edit: Here's the solution I'm using :
((ListView)sender).SelectedIndex = dataItem.DisplayIndex;
// Note, I get here and it gets set
// but the SelectedItemTemplate isn't applied!!!
}
}
}
}
我确定是一两行代码。
编辑:我更新了代码以反映解决方案,似乎我可以选择 ListView 的 SelectedItemIndex,但是,它实际上并没有呈现 SelectedItemTemplate。我不知道我是否应该在 ItemDataBound 事件中执行此操作如下所示。
【问题讨论】:
标签: c# asp.net listview listviewitem selecteditemtemplate