【问题标题】:Windows Phone C# Remove Last Canvas LineWindows Phone C# 删除最后一个画布行
【发布时间】:2014-09-29 03:51:42
【问题描述】:

您好,我正在尝试删除在 Canvas 上输入的最后一行,但我只能删除其中的某些 oart 这是我的代码...

if (this.ContentPanelCanvas.Children.Count > 0)
        { this.ContentPanelCanvas.Children.RemoveAt(this.ContentPanelCanvas.Children.Count - 1) ;

或者...

IEnumerable<Line> linesOne = ContentPanelCanvas.Children.OfType<Line>();
        if (linesOne.Count() >= 5) { 
        this.ContentPanelCanvas.Children.RemoveAt(linesOne.Count() - 5);
        }

只删除部分而不是最后输入的完整行 画线代码...

currentPoint = e.GetPosition(this.ContentPanelCanvas) ;
            Line line = new Line() { X1 = currentPoint.X, Y1 = 
            currentPoint.Y, X2 =        oldPoint.X,     Y2 = oldPoint.Y } ;

            line.Stroke = new SolidColorBrush(Colors.Black ) ;
            line.StrokeThickness = SliderOne.Value ;
            line.StrokeStartLineCap = PenLineCap.Round ;
            line.StrokeEndLineCap = PenLineCap.Round ;
            this.ContentPanelCanvas.Children.Add(line) ;
            oldPoint = currentPoint ;

谁能帮帮我... 谢谢

【问题讨论】:

    标签: c# windows-phone-8 canvas


    【解决方案1】:

    有了这个

    UIElement line=this.canvas.Children[this.canvas.Children.Count-1]; this.canvas.Children.Remove(line);

    您可以删除 Children 集合中的最后一个元素。

    【讨论】:

    • 我将它用于 wp8.1 silverlight。我可以从一条线上删除一个点或一部分,而不是整条线。我还有一张画布的背景图片。
    • 你可以调整行的大小吗?
    • 不,我无法调整行的大小。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多