0
我正在製作一個WPF應用程序,它將允許用戶繪製和調整形狀。 調整大小的部分完成使用裝飾者,形狀是我自己的類從Shape
派生。 比如我有一個Polyline
,併爲每一個它的點,我裝飾上有一個處理一個Thumb
是DragDelta
事件: WPF中奇怪的形狀調整大小行爲
void Thumb_DragDelta(object sender, DragDeltaEventArgs e)
{
PolylineEx polyline = this.AdornedElement as PolylineEx;
ResizingThumb thumb = sender as ResizingThumb;
int index = (int)thumb.Tag;
Point newPoint = new Point(
polyline.Points[index].X + e.HorizontalChange,
polyline.Points[index].Y + e.VerticalChange);
Trace.WriteLine(String.Format("Arranging point {0}:{1},{2}", index, newPoint.X, newPoint.Y));
polyline.Points[index] = newPoint;
}
好了,問題是,有時(經常),拖動拇指不流暢在所有。首先,我認爲這是一個性能問題,因爲每次都會創建一個新的Point
(但其他的東西),但是後來我注意到有時候這個點被設置在與鼠標位置無關的奇怪座標處。
我也上傳了一個示例項目HERE,有人誰知道他的方式wpf看看,並啓發我發生了什麼?
此外,如果有人認爲這樣做的更好方法,任何反饋將高度讚賞。
謝謝。
編輯:HERE是項目文件的新鏈接。
Ur鏈接不要混亂。嘗試上傳到SkyDrive或一些普遍接受和可靠的上傳主機。 – Will 2010-05-17 17:09:54
感謝您的評論,這很奇怪,它不起作用。現在已上傳到SkyDrive。 – Teodor 2010-05-17 17:39:58