UserControl显示16x16或32x32图像

时间:2013-04-20 14:46:48

标签: wpf binding size

我有一个控件可以从多个PNG文件中组装最终图像。根据绑定到控件的项状态选择各个png文件。即重叠 - 但一切正常。

每个图像文件以16x16和32x32两种尺寸(即图标)

创建

从VS设计器(或代码),我希望用户能够指定他们是否需要16x16或32x32版本。所以我添加了一个依赖属性ImgSize。我已经把它变成了一个int所以我可以把它设置为16或32.所以这个控件的用户只是XAMLs

<xyz:thisControl ImgSize="32"/>

并且DataContext提供所有绑定细节。

我希望用户控件的宽度和高度自动设置为相应的图像大小。所以如此绑定是有道理的:

<UserControl x:Class="...
    Width="{Binding Path=ImgSize}"
    Height="{Binding Path=ImgSize}"

当这不起作用时,我尝试了所有可能的RelativeSource绑定 - 没有运气。是否有额外的管道/绑定/事件层我错过了?

谢谢, 丹

1 个答案:

答案 0 :(得分:0)

为什么不直接使用UserControl的内置宽度和高度?

默认情况下,这些属性是可绑定的