我正在开发一个项目,允许您预览正在编辑的XAML。作为其中的一部分,我希望能够点击我的预览并跳转到我的XAML的相关部分。
我目前正在通过计算所有RowDefinitions
/ ColumnDefinitions
的大小"*"
来计算,而不是使用这些大小来确定{{1}中点击的位置}。当我达到Grid
尺寸时,我遇到了问题。
我知道您可以使用"Auto"
从XAML创建对象树,将其解析为顶级对象,如果该对象是XamlReader.Parse()
或FrameworkElement
,您可以使用UIElement
/ ActualWidth
或ActualHeight
来确定一个对象(大小为Measure()
)实际有多大。
我的麻烦来自这样一个事实:我只是真正处理"Auto"
和XmlElement
(s)来解析我的XAML。我无法使用XmlNode
将其中一个投放到FrameworkElement
,因为它们不是顶级元素,其中一些需要在顶级元素上定义资源。
有关如何获取.Parse()
/ ActualWdith
或计算ActualHeight
在C#代码隐藏中的任何想法/想法?
编辑: 我正在使用XAML的一个特定场景,简化了一些。
"Auto"