PDA

View Full Version : مشکل در اجرای فرمان Invalidate



رافعی مهدی
دوشنبه 03 تیر 1387, 12:32 عصر
با سلام
کنترلی به نام PaintCanvas ساخته ام و در برنامه بر روی آن با استفاده از کلاس

System.Drawing.Drawing2D.GraphicsPath

چندین مسیر گرافیکی رسم کرده ام. حالا می خواهم یکی از این مسیرها را Invalidate کنم تا سایر مسیرها بی جهت دوباره رسم نشوند و به این شکل از پرش ناخواسته ی تصویر جلوگیری کنم. فرض کنیم مسیر گرافیکی مورد نظر Path باشد.



Region Rgn;
Rgn = new Region(Path);



انتظار می رود فرمان



paintCanvas.Invalidate(Rgn);



باعث رسم مجدد این ناحیه (مسیر) شود, ولی هیچ اتفاق خاصی نمی افتد. در حالی که اگر مستطیل محیطی مسیر یاد شده یا تمام کنترل PaintCanvas را Invalidate کنیم, تغییرات اعمال شده بر Path, با رسم مجدد, بخوبی اعمال می شود.
چطور می توان این مشکل را رفع کرد.

با تشکر

mohammed
یک شنبه 21 مهر 1387, 08:48 صبح
مطمئن هستید که با دستور Invalidate می توان یک ناحیه غیر مستطیل را به عنوان پارامتر ورودی داد؟

رافعی مهدی
چهارشنبه 24 مهر 1387, 19:41 عصر
بله كاملاً !