代码之家  ›  专栏  ›  技术社区  ›  MattSlay

Silverlight拉伸子元素以填充父容器?

  •  3
  • MattSlay  · 技术社区  · 17 年前

    在Silverlight中,如何拉伸线条的宽度以填充作为子元素的StackPanel的宽度?更喜欢XAML解决方案,而不是代码隐藏。 以下是我如何在WPF中实现这一点:

    <Line X1="0" 
          X2="{Binding Path=ActualWidth, ElementName=HolePatternStackPanel}" 
          Stroke="Gray" 
          StrokeThickness="1" />
    

    但这在Silverlight中不起作用。

    3 回复  |  直到 15 年前
        1
  •  7
  •   headbiznatch    17 年前
    <Line X1="0" Y1="0" X2="0" Y2="1" Stretch="Fill" Stroke="#FF000000" />
    

    适用于WPF和Silverlight。

    如果X为0,则为垂直线。如果Y是0,它是水平的。使用X1=0 Y1=0 X2=1 Y2=1表示从左上到右下的对角线,或将其反向表示从左下到右上的对角线。

    新鲜时髦。

        2
  •  2
  •   MattSlay    17 年前

    用户sladapter在Silverlight.net论坛上回答了以下问题:

    你必须使用线对象吗?如果您只想画一条线,您可以使用矩形(2 px高度),然后您可以设置HorizontalAlignment=“Stretch”,使其自动拉伸。

    它非常适合我的需要。

        3
  •  1
  •   Dan Vanderboom    16 年前

    ElementBinding确实存在于Silverlight 4中。但是仍然没有一个很好的方法来拉伸一个项目来填充它的父容器。您真正想要的是适应可视化树中的父容器,它考虑了模板的应用。

    推荐文章