الان متوجه سوال اولت شدم:
این مورد رو خیلی دقیق نمی دونم ولی وقتی فرم ساخته میشه الزاما نشون داده نمیشه ولی وقتی رویداد لود فرخوانی میشه حتما فرم به نمایش در اومده. وقتی تو کد مربوطه رو در constructor میذاری، اشاره گر مربوط به پنجره (handleNextControl) در کد زیر نا معتبره چون اصلا پنجره ای وجود نداره. پنجره زمانی معنا داره که فرم به نمایش در بیاد. در نتیجه در کد زیر مقدار false بر میگیرده و پیرو اون، خاصیت BackgroundControls مقدار دهی نمیشه:
اگر دقیق ترش رو میخوای باید ببینی در لایه ی پایین تابع ویندوزی GetWindow چه اتفاقی میافته.کد:handleNextControl = TransparentControl.GetWindow(handleNextControl, searchStyle); if (handleNextControl == IntPtr.Zero) return false;
در مورد سوال دوم ت بازم باید بگم متوجه نشدم. وقتی invalidate می کنی، کنترل پاک نمیشه بلکه در رویداد paint بعدی فرم، دوباره رسم میشه! اینکه میگی من invalidate می کنم ولی سر آخر رسم میشه اصلا برام واضح نیست. مگه invalidate کنی نباید رسم بشه؟! لطفا بیش تر شرح بده احتمالا بد متوجه شدم.
شاد باشی
آرمینبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید






پاسخ با نقل قول

Bookmarks