2

我有一个自定义的线条形状,包括开始点和结束点。但是,ActualWidthActualHeight属性不会返回正确的值,即点之间的差异。有没有办法在派生类中重写这些属性,以及如何去做。我需要使用ActualWidthActualHeight属性,因为我使用的算法将这些属性用于其他形状。覆盖ActualWidth和ActualHeight依赖项属性

回答

2

不能覆盖ActualWidthActualHeightthey are computed

值由布局系统本身设置的基础上,实际的渲染通道

所以,你应该做的,而不是是要改变你的形状在渲染过程中的表现。您可以覆写DefiningGeometry(假设您的形状实际上是Shape),也可以覆盖MeasureOverride()