【发布时间】:2019-01-20 16:30:33
【问题描述】:
private void CloneLayoutUpdated(object sender, EventArgs e)
{
Rectangle rect = (Rectangle)SelectionBoxItem;
rect.Width = _clonedElement.RenderSize.Width;
rect.Height = _clonedElement.RenderSize.Height;
VisualBrush visualBrush = (VisualBrush)rect.Fill; // (x)
visualBrush.Viewbox = new Rect(_clonedElement.RenderSize);
visualBrush.Viewport = new Rect(_clonedElement.RenderSize);
}
我会声称第 (x) 行有问题,因为 rect.Fill 可能指的是 SolidColorBrush。
有人(简单?)Xaml / C# 代码抛出异常?
【问题讨论】:
-
无法理解这个问题。这段代码不适合你吗?你得到什么例外?您能否在问题中添加详细信息。
-
显然,
rect.Brish不是VisualBrush。 -
@ManojChoudhari:如果
rect.Fill是SolidColorBrush,并且您尝试将其转换为VisualBrush,您将得到InvalidCastException。