2014-10-20 69 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>