在WPF程序中,我想在所有"行"上更改笔画颜色。在"画布"

时间:2014-03-14 20:28:58

标签: c# wpf canvas

我在画布上有很多行。 我想遍历Lines并将它们的Stroke颜色变为黑色。

foreach循环中的代码行将无法编译。

foreach (FrameworkElement Framework_Element in My_Canvas.Children)
{
    //the following line of code won't compile.
    (Line)Framework_Element.Stroke = new SolidColorBrush(Colors.Black);
}

1 个答案:

答案 0 :(得分:5)

你缺少一对括号。

foreach (FrameworkElement Framework_Element in My_Canvas.Children)
  {
    // tries to find .Stroke on the FrameworkElement class
    // (Line)Framework_Element.Stroke

    // correct way
    ((Line)Framework_Element).Stroke = new SolidColorBrush(Colors.Black);

    // or

    var currentLine = (Line)Framework_Element;
    currentLine.Stroke = new SolidColorBrush(Colors.Black);
  }