前几天我遇到了下面的xaml,我吓坏了:
<Grid x:Name="LayoutRoot">
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid>
<Rectangle Fill="AliceBlue" Width="25" Height="25"/>
</Grid>
</TextBlock>
</Grid>
换句话说......如何将Grid放入TextBlock?
答案 0 :(得分:3)
简单的答案是,您可以通过两种方式驱动TextBlock ...通过Text属性和Inlines集合。
在这种情况下,您使用的是Inlines集合。
TextBlock(通过TextElement上的IAddChild.AddChild方法)非常智能,可以将该网格包装到InlineUIContainer中......当然,这是一个内联。
换句话说,上面的xaml ...与:
相同<Grid x:Name="LayoutRoot">
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center">
<InlineUIContainer>
<Grid>
<Rectangle Fill="AliceBlue" Width="25" Height="25"/>
</Grid>
</InlineUIContainer>
</TextBlock>
</Grid>
希望这可以帮助别人避免我的怪异。嘿,嘿。好吧,至少,我希望通过了解它是如何工作来平息它们。