如何解冻冻结的图形
本文关键字:冻结 图形 解冻 何解冻 | 更新日期: 2023-09-27 18:20:02
比方说,我已经组合了两个几何体
var combined = Geometry.Combine(geometry1, geometry2, GeometryCombineMode.Intersect, null);
if (combined.Figures.Count > 0)
combined.Figures[0].IsClosed = false; // throws exception
WindowsBase.dll 中发生"System.InvalidOperationException"类型的未处理异常
附加信息:无法在对象"M0;50,。。。。。z',因为它处于只读状态。
在调试器中
geometry1.IsFrozen = false;
geometry2.IsFrozen = false;
combined.IsFrozen = false;
combined.Figures.IsFrozen = false;
combined.Figures[0].IsFrozen = true; // wtf?
解冻该数字的正确方法是什么?
我正在努力解决这个问题。
正如@pushpraj所评论的,有一种Clone()
方法可以处理这个问题:
var combined = Geometry.Combine(geometry1, geometry2, GeometryCombineMode.Intersect, null);
if (combined.Figures.Count > 0)
{
var figure = combined.Figures[0].Clone();
figure.IsClosed = false;
combined.Figures.RemoveAt(0);
combined.Figures.Insert(0, figure);
}