2014-10-20 74 views
0

我有一些坐标位置,我必须在其上显示可点击的按钮。所以按钮里面我创建矩形,一切都按预期工作,但现在我必须显示部分填充矩形里面有点像矩形底部边框。 下面是代码:如何在xaml中部分填充画布内的矩形

<StackPanel> 
       <Button Width="{Binding width}" Height="{Binding height}" 
         ToolTipService.ToolTip="{Binding name}" Command="{Binding DataContext.EventTriggerCommand, ElementName=XYZCOORD}" CommandParameter="{Binding}"> 
        <Button.Template> 
         <ControlTemplate> 
         <Rectangle Fill="{Binding Users_Auth_Info}" Opacity="0" Stretch="UniformToFill"/> 
         </ControlTemplate> 
        </Button.Template> 
        <Button.RenderTransform> 
         <TranslateTransform X="{Binding x}" Y="{Binding y}"/> 
        </Button.RenderTransform> 
       </Button> 
       <Border BorderBrush="Red" Height="{Binding Thickness_param}" BorderThickness="8"> 
        <Border.RenderTransform> 
         <TranslateTransform X="{Binding x}" Y="{Binding y}"/> 
        </Border.RenderTransform> 
       </Border> 

现在我展示与边境接壤,但透明的矩形是不是我want.Please建议。

+0

您发布的XAML不是很有帮助。它绑定了未在示例中声明的事物。你的标题说你想填充一个Canvas中的Rectangle,但是XAML会显示一个StackPanel容器。最后,如果你不需要边框,那么为什么不从XAML中移除边框元素? – 2014-10-21 03:44:39

+0

它只是一个替代,我已经使用我显示一个透明的矩形和低于边界,但理想情况下,我需要的是矩形填充到我们将从后端提供的百分比。 – Dhruv 2014-10-21 04:47:39

+0

你是说你已经将按钮推到了你想要的位置,但是现在你想在按钮里面有一个彩色的矩形*?如果是这样,完全删除'Button.Template',而不是只添加一个矩形作为'Content',或者使用Button.Content或者作为直接子节点('')。此外,您可以通过将按钮的“边框厚度”设置为0来删除边框。 – 2014-10-21 20:42:27

回答

0

使用按钮而不是边框​​,并在该按钮内使用矩形。附上代码

<StackPanel> 
       <Button Width="{Binding width}" Height="{Binding height}" 
         ToolTipService.ToolTip="{Binding name}" Command="{Binding DataContext.EventTriggerCommand, ElementName=XYZCOORD}" CommandParameter="{Binding}"> 
        <Button.Template> 
         <ControlTemplate> 
         <Rectangle Fill="{Binding Users_Auth_Info_Color}" Opacity="0" Stretch="UniformToFill"/> 
         </ControlTemplate> 
        </Button.Template> 
        <Button.RenderTransform> 
         <TranslateTransform X="{Binding x}" Y="{Binding y}"/> 
        </Button.RenderTransform> 
       </Button> 

       <Button Width="{Binding width}" Height="{Binding Thickness_param}" 
         ToolTipService.ToolTip="{Binding name}" Command="{Binding DataContext.EventTriggerCommand, ElementName=XYZCOORD}" CommandParameter="{Binding}"> 
        <Button.Template> 
         <ControlTemplate> 
          <Rectangle Fill="{Binding Users_Auth_Info_Color}" Stretch="UniformToFill"/> 
         </ControlTemplate> 
        </Button.Template> 
        <Button.RenderTransform> 
         <TranslateTransform X="{Binding x}" Y="{Binding y}"/> 
        </Button.RenderTransform> 
       </Button> 
      </StackPanel>