【问题标题】:XAML Border vs RectangleXAML 边框与矩形
【发布时间】:2012-04-10 20:47:27
【问题描述】:

我想要一个这样的窗口

我应该如何得到这个,我对 XAML 中的 Border 和 Rectangle 感到困惑。

Border 是一个容器控件,它的使用非常简单,ractangle 有什么用,因为它不能包含任何控件。

请帮忙

【问题讨论】:

    标签: wpf xaml


    【解决方案1】:

    BorderRectangle 都无法实现这一点,您可能需要 Path 或类似的东西。

    【讨论】:

    • 请您指导我举一些例子
    • @MSingh:有examples on MSDN
    • H.B.@ 所以我只是创建所需的形状,将窗口样式设置为无并将窗口背景设置为透明,这是获得我想要的方式吗?
    • @MSingh 我会说是的。查看this 以获取更多指导。
    • @MSingh:类似的东西(你还需要AllowsTransparency),但总的来说,我不建议像那样“过度设计”窗口,用户通常不太喜欢它。 ..
    【解决方案2】:

    我想回答你最后一个问题

    ractangle 里面不能包含任何控件,有什么用。

    是的,它不能包含任何控件,但您始终可以在后台绘制它

    <Grid>
        <Rectangle/>
        <TextBlock/>
    </Grid>
    

    用户可能不会看到任何差异。为什么要为此设置两个不同的控件?不确定,但我的猜测是边框是在控件周围有一个矩形的快捷方式,它后面可能还有更多,但这就是我的看法。矩形也是一个形状,除了椭圆、直线等还有一个矩形是有意义的。

    【讨论】:

      【解决方案3】:

      你可以画一个plygon如下:

      <Polygon
          Points="100 50, 100 150,250 150, 250 75, 225 50"
          Stroke="Black" 
          StrokeThickness="2">
          <Polygon.Fill>
             <SolidColorBrush Color="White"/>
          </Polygon.Fill>
      </Polygon>
      

      Here你可以找到一些其他有趣的例子

      【讨论】:

        【解决方案4】:

        这条路径就像你的形状,如果你使用 Expression Blend,你可以将它绘制到编辑器中。

        <Path Data="M20.5,0.5 L153.81876,0.5 194.5,41.181242 194.5,103.5 C194.5,114.54569 185.5457,123.5 174.5,123.5 L20.5,123.5 C9.4543047,123.5 0.5,114.54569 0.5,103.5 L0.5,20.500004 C0.5,9.4543067 9.4543047,0.50000197 20.5,0.5 z" Fill="#FFF4F4F5" Stretch="Fill" Stroke="Black" HorizontalAlignment="Left" Height="124" VerticalAlignment="Top" Width="195"/>
        

        【讨论】:

          猜你喜欢
          • 2014-04-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-04-22
          • 1970-01-01
          相关资源
          最近更新 更多