2013-06-25 98 views
0

我有一個應用程序顯示使用Infragistics UltraMonthViewMulti用戶界面控件的離開和缺席。如何動態創建圖像Graphics.DrawImageUnscaledAndClipped

我有幾種類型的缺席有不同的顏色。我已成功創建了一個繪圖過濾器,使用以下代碼在適當的日期顯示半天三角形。

If (day.Date.CompareTo(DateTime.Today) = 0) Then 
     drawParams.Graphics.DrawImageUnscaledAndClipped(Image.FromFile("..//..//redTriangleHalfDay.png"), day.Rect) 
     Return False 
    End If 

上述代碼需要在項目中使用相應顏色的PNG文件。我想用代碼動態創建這些彩色圖像,並避免使用大量的PNG文件。

這可能嗎?

任何幫助或建議非常感謝。

詹姆斯O'Doherty

回答

2

也許對你的任務的另一個解決方案(再次使用DrawFilter)如果你與其他類型的符號/顏色替換您的圖片可以。除了繪製圖像,你可以畫三角形,cirlces,直線,弧線等,如果您使用的例如:

Graphics gr = ultraMonthViewMulti1.CreateGraphics;; 
     gr.DrawPolygon(new Pen(Color.Red), new Point[] { new Point(10, 10), new Point(20, 20), new Point(10, 30), new Point(10, 10) }); 

通過這種方式(使用三個點),你可以畫一個三角形。你也可以使用其他繪製方法。例如: gr.DrawCurve,gr.DrawEllipse,gr.DrawLine,gr.DrawPie

隨意,如果您有任何問題,給我寫信