none
求指导 InkCanvas的 Stroke 的 Draw() 使用方法 RRS feed

  • 问题

  • 我想用InkCanvas做一个画图的工具

    不知思路是否正确

    我现在已经有一个DrawVisual的画图工具

    也用到了DrawingContext

    下面这样对stroke使用是否正确

     

     void inkCanvas_StrokeCollected(object sender, InkCanvasStrokeCollectedEventArgs e)
            {
                Rect rect = e.Stroke.GetBounds();
                DrawingVisual drawingVisual = new DrawingVisual();
                DrawingContext drawingContext = drawingVisual.RenderOpen();
                int width = Convert.ToInt32(rect.Width);
                int height = Convert.ToInt32(rect.Height);
                drawingContext.DrawRectangle(Brushes.Black, new Pen(Brushes.Black, 5), rect);

                e.Stroke.Draw(drawingContext);
                drawingContext.Close();

            }

     

    这样写,没有反应呢

     

    另外,如何在InkCanvas产生墨迹之前 就设置墨迹的属性呢 比如,我要他画出来就是个矩形,另外,要画虚线的话,应该怎么做,画出来就是虚线,而不是画完了才虚线

    我知道有个 DrawingAttributes 但是不知道怎么用


    Hero

    2011年6月13日 5:27

答案

全部回复