Cry*_*tal 7 c# windows coding-style draw microsoft-metro
我只是希望用户能够使用某种指针在屏幕上绘图.
我已经有代码工作,捕获指针的位置,但我无法弄清楚如何将像素或形状或任何东西放在屏幕上.
我找到了这个有用的教程:http://www.dotnetspeaks.com/DisplayArticle.aspx? ID =
137
我一直在看这里的文档:http:
//msdn.microsoft.com/en-us/library/windows/apps/hh465055(v = VS.85).aspx
到目前为止没有运气.=(本教程适用于Windows Phone 7,所以它有点不同.=\Help,please?=)
这就是我到目前为止所拥有的.
绘图部分:
private void Image_PointerPressed(object sender, PointerEventArgs e)
{
Debug.WriteLine("Image_PointerPressed");
isTracing = true;
}
private void Image_PointerReleased(object sender, PointerEventArgs e)
{
Debug.WriteLine("Image_PointerReleased");
isTracing = false;
}
private void Image_PointerMoved(object sender, PointerEventArgs e)
{
Debug.WriteLine("Image_PointerMoved");
Debug.WriteLine(e.GetCurrentPoint(this).Position);
if (isTracing)
{
Debug.WriteLine("isTracing");
Point pos = e.GetCurrentPoint(this).Position;
Color color = Colors.Green;
Line line = new Line() { X1 = pos.X, X2 = pos.X + 1, Y1 = pos.Y, Y2 = pos.Y + 1 };
line.Stroke = new SolidColorBrush(color);
line.StrokeThickness = 15;
//// So how do I draw this line onto the screen?? ////
}
}
Run Code Online (Sandbox Code Playgroud)
作为参考,代码中的其他内容:
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Multimedia.FFmpeg;
using Windows.Foundation;
using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Shapes;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Input;
using Windows.UI.Input;
bool isTracing = false;
简写:
Lines和Rectangles 添加到面板中Metro/XAML无法覆盖OnRender()方法等.您可以选择将现有图形元素(例如,从Shapes命名空间)添加到Canvas或其他Panel,或者直接操作位图中的像素并将该位图推送到Image元素中.
Metro/C#仅具有保留模式图形绘制,这意味着它将呈现的唯一内容是已添加到视图层次结构中的对象.您正在寻找的是某种即时模式图形绘制,例如
myCanvas.DrawLine( fromPoint, toPoint );
Run Code Online (Sandbox Code Playgroud)
这可以使用HTML5的Canvas对象在JavaScript/HTML项目中完成.遗憾的是,这是我倾向于这样一个项目的方式.不幸的是,微软没有为XAML项目提供立即模式元素,但事实就是如此.C++/DirectX也是进行自定义绘图的一个选项,但需要对您在应用程序中执行的所有其他操作进行大量修改.
| 归档时间: |
|
| 查看次数: |
9206 次 |
| 最近记录: |