0

コードビハインドに配列リストがあり、追加した値が保持されません。私はそれらを public static にしてみましたが、それはうまくいきますが、それに関する問題は、ユーザーがフォームを完了した後に値を保持したくないということです。フォームを再度使用する必要がある場合は、それらをクリアしていただきたいと思います。public static として設定されていない場合、値は追加されますが、フォームに次の項目が追加されるまでに、最初の項目の値は配列リストから削除されます。助けてください。

namespace Application
{
    public partial class Enquiry : System.Web.UI.Page
    {
         ArrayList Dates = new ArrayList();
         ArrayList Dates2 = new ArrayList();
         ArrayList Cost = new ArrayList();
4

2 に答える 2

4

ASP.NET Web ページはステートレスです。クラス プロパティは、ポストバック時に自動的に保存および復元されません。ページをリロードするたびに、ページ クラスの新しいインスタンスがインスタンス化され、プライベートArrayListプロパティがリセットされて空に戻ります。値を保持したい場合は、ViewState、 またはを使用するかSession、ページが読み込まれるたびにリストを再構築するだけで、自分で管理する必要があります。

ASP.NET ページのライフ サイクルを調査する必要がある場合があります。それは物事をより明確にするかもしれません。

于 2012-07-12T23:24:41.963 に答える
0

ビューステートでデータをストローするために、以下の例を使用してください。 http://msdn.microsoft.com/en-us/library/bb386448.aspx

于 2012-07-13T04:34:38.700 に答える