【发布时间】:2010-12-15 05:34:38
【问题描述】:
以下 xaml 在 Window 中可以正常工作:
<Border Width="45" Height="55" CornerRadius="10" >
<Border.Background>
<ImageBrush>
<ImageBrush.ImageSource>
<CroppedBitmap Source="profile.jpg" SourceRect="0 0 45 55"/>
</ImageBrush.ImageSource>
</ImageBrush>
</Border.Background>
</Border>
但是当我在 DataTemplate 中使用等效代码时,我在运行时收到以下错误:
对象初始化失败 (ISupportInitialize.EndInit)。 '来源' 属性未设置。对象错误 'System.Windows.Media.Imaging.CroppedBitmap' 在标记文件中。
内部异常: {"'Source' 属性未设置。"}
唯一的区别是我有CroppedBitmap的Source属性数据绑定:
<CroppedBitmap Source="{Binding Photo}" SourceRect="0 0 45 55"/>
什么给了?
更新:根据old post by Bea Stollnitz,这是CroppedBitmap 的源属性的限制,因为它实现了ISupportInitialize。 (此信息在页面下方 - 搜索“11:29”,您会看到)。
这仍然是 .Net 3.5 SP1 的问题吗?
【问题讨论】:
-
Bea Stollnitz 博客的链接已失效,我找不到存档。
标签: wpf data-binding datatemplate crop bitmapimage