在按钮控件内填充一个矩形

时间:2012-06-30 15:45:47

标签: c# .net wpf wpf-controls expression-blend

我有一个图像(一个框架)和一个矩形(框架内的图片)。我让它们彼此适合,我可以从代码中更改矩形的填充图像,如下所示:

myRectangle.Fill = new ImageBrush(new BitmapImage(new Uri(myImagePath)));

但是我必须为一个按钮创建这两个对象,所以我在Expression Blend中选择它们,右键单击并单击“Make Into Control”并选择“Button”然后单击ok然后我得到一个按钮。唯一的问题是我无法填充矩形,因为我不知道如何从代码中获取它。

是否有人可以告诉我如何从按钮内的代码到达我的矩形,并用图像填充它?

2 个答案:

答案 0 :(得分:0)

只需像你一样填充矩形,然后:

button.Content = myRectangle;

在XAML中:

<Button>
  <Button.Content>
     <Rectangle Width="100" Height="50">
        <Rectangle.Fill>
           <SolidColorBrush Color="Aqua" />
         </Rectangle.Fill>
      </Rectangle>
  </Button.Content>
</Button>

参考:Answer link

您可以进一步查找ContentControl.Content属性Here

的示例

答案 1 :(得分:0)

如果您知道控件的名称,例如按钮你应该能够在代码隐藏中找到它,如下所示

var myRectangleButton = (Button)this.FindName("myRectangleButton");