PDA

View Full Version : سوال: حفظ مقدار متغییرها بعد از Postback



بانوآفتاب
جمعه 28 فروردین 1388, 17:16 عصر
سلام، امیدوارم جمعه خوبی داشته باشید :قلب:
1 متغییر دارم توی فرم که وقتی کاربر 1 دکمه را کلیک میکند، True میشود ، بعد با کلیک 1 دکمه دیگه میخوام ببینم که اگه مقدارش True هست کاری رو انجام بده، ولی مقدارش False هستش :گریه: اومدم توی PageLoad


if (!Page.IsPostBack)

رو گذاشتم ، حالا دیتاستی که توی PageLoad ، اونرو New میکردم، بعد از کلیک دکمه اول Null میشه :اشتباه:، چرا؟؟ باید چیکار کنم ؟ :افسرده:

iman_22a
جمعه 28 فروردین 1388, 17:44 عصر
سلام . وقت بخیر . متغیر رو Public Shared تعریف کنین . در ضمن دیتاست رو توی بلوک زیر بسازید (New کنید)


if (!Page.IsPostBack)

بانوآفتاب
جمعه 28 فروردین 1388, 19:11 عصر
سلام . وقت بخیر . متغیر رو Public Shared تعریف کنین . در ضمن دیتاست رو توی بلوک زیر بسازید (New کنید)


if (!Page.IsPostBack)


دوست عزیز ممنون از راهنماییتون، من توی وب تازه کارم، متوجه نشدم Public Shared چی هست :ناراحت: و دیتاست رو هم توی همون بلوک New می کنم ولی وقتی فرم PostBack میشه( دستورات New انجام نمیشه) و دیتاست Null هست. متغییر را با ViewState حل کردم، آیا درسته و آیا دیتاست و ... هم میشه کاری کرد که توی این رفت و برگشت به سرور وضعیت خودشونو حفظ کنند؟؟
بازم ممنون

iman_22a
جمعه 28 فروردین 1388, 20:04 عصر
سلام ، منظورم این بود که توی تعریف متغیر از :


Public Shared id as Integer

استفاده کنین تا موقع رفت و برگشت صفحه ، مقدار متغیرتون باقی بمونه . البته نمی دونم کدوم روش بهتره ، چون منم زیاد اصولی کار نکردم :خجالت:

اگر بخشی از کد برنامه تون رو بذارین اینجا بهتر میشه در موردش تصمیم گرفت .

online_mansoor2007
یک شنبه 30 فروردین 1388, 17:13 عصر
در رویدادی شئی که باعث postback میشه یک بار دیگه باید اطلاعات را از بانک استخراج کنید . چون با نوشتن if (!Page.IsPostBack) در واقع گفتیم اگر صفحه برای اولین بار باز شد (یعنی postback نکرد) بیا اطلاعات را از بانک بگیر . حلا که صفحه postback میشه دیگه این کار رو انجام نمیده . درسته ؟؟؟ پس همون کاری که در ابتدا گفتم رو انجام بده