آریوس1985
سه شنبه 31 شهریور 1388, 17:12 عصر
با سلام خدمت دوستان
من به یک مشکل برخورده بودم که باعث شد خیلی بگردم و نهایتا یک نکته ی خیلی کوچک ولی جالب رو پیدا کردم.
خاصیت ReadOnly
بله مسلما خیلی از شماها تو دلتون میگید این که دیگه پست زدن نداشت ولی خوب شاید واسه بعضی ها جالب باشه.
برای نمایش یک سری داده که در واقع قیمت بودند(یه نوع فاکتور)، احتیاج به کنترلی داشتم که قیمت ها رو نشون بده و اصولا این جور مواقع ناخودآگاه به سمت Label میریم.
بعد از نمایش مقادیر و در هنگام Post Back متوجه شدم که چون داده های Lebel ها رو با Javascript پر کردم، نمیتونم به داخل Label دسترسی داشته باشم.
همه ی Label ها حذف شدند و جای آن ها رو TextBox ها گرفتند. ولی دوباره با مشکل جدیدی روبه رو شدم :
برای جلوگیری از دسترسی کاربر به اعداد داخل TextBox ها باید خاصیت ReadOnly را فعال می کردم، اما بعد از اینکار همان حالت Label ها بو وجود میآمد یعنی هنگام PostBack هیچ داده ای را نمی توان استخراج کرد.(در صورت استفاده از Enable=False هم رنگ Text را نمیتوان تغییر داد)
زیاده گویی نکنم، یکی از خاصیت های .NET 2 , 3.5 این خاصیته که در صورتیکه از منوی Properties خاصیت ReadOnly را فعال کنیم هنگام PostBack مقدار Text داخل TextBox همراه با ViewState به سرور ارسال نخواهد شد(این در حالیست که در .NET 1.1 این امر اتفاق نمی افتاد )
اما در صورتیکه این خاصیت از طریق کد فعال شود، می توان به مقدار درون TextBox دسترسی داشت.
txtFinalPrice_Final.Attributes.Add("readOnly", "readOnly");
من به یک مشکل برخورده بودم که باعث شد خیلی بگردم و نهایتا یک نکته ی خیلی کوچک ولی جالب رو پیدا کردم.
خاصیت ReadOnly
بله مسلما خیلی از شماها تو دلتون میگید این که دیگه پست زدن نداشت ولی خوب شاید واسه بعضی ها جالب باشه.
برای نمایش یک سری داده که در واقع قیمت بودند(یه نوع فاکتور)، احتیاج به کنترلی داشتم که قیمت ها رو نشون بده و اصولا این جور مواقع ناخودآگاه به سمت Label میریم.
بعد از نمایش مقادیر و در هنگام Post Back متوجه شدم که چون داده های Lebel ها رو با Javascript پر کردم، نمیتونم به داخل Label دسترسی داشته باشم.
همه ی Label ها حذف شدند و جای آن ها رو TextBox ها گرفتند. ولی دوباره با مشکل جدیدی روبه رو شدم :
برای جلوگیری از دسترسی کاربر به اعداد داخل TextBox ها باید خاصیت ReadOnly را فعال می کردم، اما بعد از اینکار همان حالت Label ها بو وجود میآمد یعنی هنگام PostBack هیچ داده ای را نمی توان استخراج کرد.(در صورت استفاده از Enable=False هم رنگ Text را نمیتوان تغییر داد)
زیاده گویی نکنم، یکی از خاصیت های .NET 2 , 3.5 این خاصیته که در صورتیکه از منوی Properties خاصیت ReadOnly را فعال کنیم هنگام PostBack مقدار Text داخل TextBox همراه با ViewState به سرور ارسال نخواهد شد(این در حالیست که در .NET 1.1 این امر اتفاق نمی افتاد )
اما در صورتیکه این خاصیت از طریق کد فعال شود، می توان به مقدار درون TextBox دسترسی داشت.
txtFinalPrice_Final.Attributes.Add("readOnly", "readOnly");