加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 无法清除ASP的项目:Repeater

发布时间:2020-12-16 01:53:51 所属栏目:百科 来源:网络整理
导读:这是我启动ASP的方式:Repeater: var taskItemsList = new ListTask(); taskItemsList = GenerateActiveList(); //generates 6 items_taskItemsListSorted = from Task in taskItemsList orderby Task.AssignedTo ascending,Task.DueDateTicks ascending se
这是我启动ASP的方式:Repeater:

var taskItemsList = new List<Task>(); 

taskItemsList = GenerateActiveList(); //generates 6 items
_taskItemsListSorted = from Task in taskItemsList
                       orderby Task.AssignedTo ascending,Task.DueDateTicks ascending
                       select Task;
taskRepeater.DataSource = _taskItemsListSorted;
taskRepeater.DataBind();

这就是我尝试使同一个转发器显示不同的列表(当用户单击按钮时此代码运行):

taskRepeater.DataSource = null; taskRepeater.DataBind();

var taskItemsList = new List<Task>(); 

taskItemsList = GenerateInactiveList(); //generates 5 items
_taskItemsListSorted = from Task in taskItemsList
                       orderby Task.AssignedTo ascending,Task.DueDateTicks ascending
                       select Task;
taskRepeater.DataSource = _taskItemsListSorted;
taskRepeater.DataBind();

(请注意,在第二个代码部分中,使用新函数生成不同的列表.)

问题是Repeater控件似乎仍然包含第一个代码部分中的项目.

第2节中的最后一个操作,taskRepeater.DataBind();,使ItemDataBound函数触发11次,这表明最初生成的列表项仍以某种方式包含在转发器中.

我出错的地方有什么想法吗?

解决方法

您遇到的唯一问题是OnClick事件正在启动,执行您想要执行的操作,但之后页面OnLoad正在启动并将内容替换为原始内容.要解决这个问题,只需在OnLoad页面上执行此操作:

if (!IsPostBack)
    // Bind the repeater

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读