PDA

View Full Version : چرا نمیتونم TextChanged رو override کنم؟



az.heidarzadeh
پنج شنبه 03 آذر 1390, 12:09 عصر
سلام
من همیشه event هامو override میکنم مشکلی نداره اما الان که میخواستم TextChanged رو override کنم بهم این خطارو میده چرا؟


Error 4 'AMW.Components.amwMoneyTextBox.TextChanged(System .EventArgs)': cannot override because 'System.Windows.Forms.Control.TextChanged' is not a function

یعنی چی که میگه function نیست پس چیه؟...

gwbasic
پنج شنبه 03 آذر 1390, 12:28 عصر
ما معمولا event‌رو override نمی کنیم بلکه متد مربوط به اون رو override‌می کنیم مثلا OnTextChange

az.heidarzadeh
پنج شنبه 03 آذر 1390, 13:28 عصر
سلام
ممنون کاملا حق با شما بود اشتباه کرده بودم، حالا من یه کنترل نوشتم که OnTextChange رو روش override کردم الان که دارم توی برنامه خودم ازش استفاده میکنم یعنی دیگه نمیتونم توی TextChanged اون چیز دیگه ای بنویسم آخه کدی که توی سورس برنامم مینویسم دیگه اجرا نمیشه فقط اون override اجرا میشه...

gwbasic
پنج شنبه 03 آذر 1390, 13:45 عصر
واضحه چون کدی که توی OnTextChange هست باعث می شه متدهایی که به رویداد TextChanged وصل شدن اجرا بشن و شما توی override تغییرش دادین و اون کد اجرا نمی شه و در نتیجه متدی که به رویداد وصل شده اجرا نمی شه شما همیشه باید در این جور موارد متد base رو صدا بزنین یعنی توی متد OnTextChanged ای که override کردین متد ()base.OnTextChanged رو صدا بزنین.
البته بهتر بود هدف اصلیتون رو از این کار می گفتین تا شاید راه بهتری پیشنهاد بشه