ここで起こっているライフサイクルを理解しようとしています。アイテムIDを取得してリストに書き込むaspリストビューがあります。
protected void ShareWith_OnItemBound(object sender, ListViewItemEventArgs e)
{
if (!IsPostBack)
{
if (e.Item.ItemType == ListViewItemType.DataItem)
{
ListViewDataItem currentItemId = (ListViewDataItem)e.Item;
System.Web.UI.WebControls.DataKey currentDataKey = this.lvShareWithPanel.DataKeys[currentItemId.DataItemIndex];
int FriendId = Convert.ToInt32(currentDataKey["SharedUserId"]);
CurrentList.Add(FriendId);
}
}
}
私のリストがメソッドの外で定義されている場所
private List<int> CurrentList = new List<int>();
その後、ユーザーはいくつかの新しいアイテムをリストに追加し、asp ボタンをクリックして続行します。現在のリストと新しいリストの比較を実行していますが、ボタンのクリック後にデバッグを観察すると、リスト「CurrentList」が空になっていることがわかりました。メソッドの外側にあるリストが影響を受けるのはなぜですか?
理解を助けてくれてありがとう