将UserControl中ImageBrush的ImageSource绑定到CodeBehind

时间:2015-11-02 08:23:31

标签: wpf xaml data-binding user-controls

我创建了一个包含按钮的用户控件。 我想在每次使用按钮时设置图像画面背景的imagesource路径。 为此,我做了: 我在代码beind中创建了一个依赖属性字符串-MyPath。 在我写的用户控件的xaml中:

<Button>
   <Button.Background>
        <ImageBrush ImageSource={Binding MyPath}/> 
   </Button.Background>
</Button>

在UserControl的构造中(xamk.cs)我写了

DataContext=this;

MainWindow位于View目录中,图像路径为“ViewResources \ Regular.png”

所以在MainWindow.xaml中我写道:

<vm:MyButton NyPath="Resources\Regular.png"/>

为什么不起作用?

1 个答案:

答案 0 :(得分:0)

您需要在xaml的顶部设置UserControl的名称,然后将其绑定:

<Button>
  <Button.Background>
    <ImageBrush ImageSource={Binding MyPath, ElementName="YourUserControlName"}/> 
  </Button.Background>
</Button>