これは、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();
(2 番目のコード セクションでは、別のリストを生成するために新しい関数が使用されていることに注意してください。)
問題は、Repeater コントロールに最初のコード セクションの項目がまだ含まれているように見えることです。
セクション 2 の最後のアクション taskRepeater.DataBind(); では、ItemDataBound 関数が 11 回起動されます。これは、最初に生成されたリスト アイテムがまだリピーターに含まれていることを示しています。
私が間違っている場所のアイデアはありますか?