如何在Compact Edition中绘制矩形?

时间:2009-11-26 20:10:23

标签: c# windows-mobile compact-framework

我想在Windows手机上画一个矩形。

  1. 绘制矩形
  2. 用颜色填充矩形
  3. 把它画到手机上。
  4. 给它一个事件处理程序,当用户点击发生的事情时。
  5. 我不确定如何执行第2,3和4步。我看到有一个名为矩形的绘图类,但我不知道如何在表单上获取它。

    然后我不知道如何给它一个事件处理程序。我计划动态制作其中的12个,所以我必须以某种方式告诉哪一个被点击以及它包含在其中的颜色。

    由于

    编辑到目前为止,我有这个,但我没有在我的表格上看到它。

     Graphics surface = this.CreateGraphics();
        Pen pen = new Pen(Color.Black, 1f);
        System.Drawing.Rectangle test = new Rectangle(0, 0, 500, 500);
        surface.DrawRectangle(pen, test);
    

1 个答案:

答案 0 :(得分:2)

听起来你想要一个彩色按钮。我认为最简单的方法是从Control继承并覆盖其Paint事件。

public class ColoredButton : Control {
    protected override void OnPaint(PaintEventArgs e) {
        Graphics graphics = e.Graphics;
        Pen pen = new Pen(Color.Black, 1f);
        SolidBrush brush = new SolidBrush(Color.Red);

        graphics.FillRectangle(brush, 0, 0, Width, Height);
        graphics.DrawRectangle(pen, 0, 0, Width-1, Height-1);
    }
}

现在只需挂钩本机控件Click事件。

或者,如果您想要更高级的控件,请查看此库

http://code.msdn.microsoft.com/uiframework