سلام.
لطفاً اين لينک رو ببينيد
http://stackoverflow.com/questions/9...e-uc-is-loaded
تو اون قسمت که تيک سبز خورده اين خط
return o == null;
منظورم اون null== هست چه دليلي براي نوشتنش وجود داشته؟ به نظر من بود و نبودش فرقي نمي کنه.
سلام.
لطفاً اين لينک رو ببينيد
http://stackoverflow.com/questions/9...e-uc-is-loaded
تو اون قسمت که تيک سبز خورده اين خط
return o == null;
منظورم اون null== هست چه دليلي براي نوشتنش وجود داشته؟ به نظر من بود و نبودش فرقي نمي کنه.
چرا تاثیر نداره نوع پروپرتی شما از نوع bool هست و این یعنی این پروپرتی فقط مقادیر true یا false رو دریافت و یا ارسال می کنه و در قسمت get شما باید یه مقدار true یا false رو برگردونید حالا اومده یه شی تولید کرده و گفته اگه این شی برابر null بود مقدار true رو برگردون و در غیر این صورت مقدار false رو برگردون .
اجازه بديد من چيزي که مي فهمم از اين کد رو بگم شما ايراد من رو بگيد
خوب دفعه اول که صفحه مي خواد لود بشه مقدار ViewState طبيعتاً null هست.
خوب تو قسمت Get مياد اين مقدار null رو مي ريزه تو شي O
بعد در خط بعدي مياد شي O رو بر مي گردونه (که در واقع ميشه گفت داره null برمي گردونه)
حالا ميرسيم به null== که به قول شما داره ميگه اگه مساوي null هست مقدار true رو برگردون و در غیر این صورت مقدار false رو برگردون .
اين قسمت که Bold کردم رو نمي فهمم کجاي کد داره اين رو ميگه؟
.......................................
يه سوال ديگه هم دارم
اين قسمت Set که اومده True ريخته در ViewState باعث نميشه تا زماني که اين طوريIsUCPostBack = false;مقدار flase به پراپرتي نداديم مقدار پراپرتي مون true باشه؟ (يعني اين جمله: خوب دفعه اول که صفحه مي خواد لود بشه مقدار ViewState طبيعتاً null هست. که در بالا نوشتم نقض بشه؟)
آخرین ویرایش به وسیله bftarane : چهارشنبه 14 فروردین 1392 در 13:12 عصر
o برگشت داده نمیشه بلکه حاصل o == null بازگشت میشه.(که حاصلش از نوع بولین هست)در خط بعدي مياد شي O رو بر مي گردونه
متوجه شدم. اگه اين
o == null برقرار باشه خوب نتيجه True و اگه برقرار نباشه نتيجه false هست که توسط Get اين true يا false برگشت داده ميشه.
...............
حالا ميشه سوال پايين رو جواب بديد
بزاريد يه جور بهتر بپرسم سوالم رويه سوال ديگه هم دارم
اين قسمت Set که اومده True ريخته در ViewState باعث نميشه تا زماني که اين طوري 1
IsUCPostBack = false;
مقدار flase به پراپرتي نداديم مقدار پراپرتي مون true باشه؟ (يعني اين جمله: خوب دفعه اول که صفحه مي خواد لود بشه مقدار ViewState طبيعتاً null هست. که در بالا نوشتم نقض بشه؟)
الآن شما اين کد رو ببينيد
private bool IsUCPostBack { get { object o = ViewState["S2UC"]; return o == null; } set { ViewState["S2UC"] = true; } }
مي گيد مقدار پراپرتي چيه؟ Ture يا false?
آخرین ویرایش به وسیله bftarane : چهارشنبه 14 فروردین 1392 در 13:48 عصر
فکر کنم اينم متوجه شدم ببينيد درست مي گم؟
اول Get اتفاق مي افته پس مقدار بازگشتي پراپرتي بار اول که بهش دسترسي پيدا کنيم fasle هست، حالا بار دوم اگه مقدارش رو خودمون ست نکنيم مقدارش True خواهد بود يعني همون چيزي که در قسمت Set بهش اختصاص داده. درسته؟
بله حق با شماست. اشتباهي به جاي True نوشته بودم false.کاملا برعکس
اگر o برابر null باشه IsUCPostBack برابر true خواهد بود و اگر null نباشه false.
ممنون از همه.