1
75
WPF具有特定类型的内置转换器。如果您绑定图像的
所以
如果ImageSource属性是图像的有效URI的字符串表示形式,则可以工作。 当然,您可以滚动自己的绑定转换器:
像这样使用:
|
2
22
This article 由AtulGupta提供的示例代码涵盖了几个场景:
|
3
18
您也可以简单地设置源属性,而不是使用子元素。为此,类需要将图像作为位图图像返回。下面是一个例子,说明我是如何做到这一点的
类属性就是
我想这可能比值转换器要多一些工作,但这是另一种选择。 |
4
8
您需要实现 IValueConverter 将URI转换为图像的接口。ivalueConverter的转换实现如下所示:
然后您需要在绑定中使用转换器:
|
5
6
这里选择的答案的问题是,当来回导航时,每次显示页面时都会触发转换器。 这将导致连续创建新的文件句柄,并阻止删除该文件的任何尝试,因为该文件仍在使用中。这可以通过使用Process Explorer进行验证。 如果图像文件可能在某个时间点被删除,则可以使用如下转换器: using XAML to bind to a System.Drawing.Image into a System.Windows.Image control 此内存流方法的缺点是,每次加载和解码图像时都无法进行缓存: 要防止图像被多次解码,请从URI分配image.source属性,而不是使用内存流 来源:“使用XAML的Windows应用商店应用程序的性能提示” 为了解决性能问题,可以使用存储库模式提供缓存层。缓存可能发生在内存中,这可能导致内存问题,或者作为临时文件夹中的缩略图文件,当应用程序退出时可以清除该文件夹。 |
6
4
您可以使用
得到你想要的
|
user180708 · 将日期转换为英文日期 6 年前 |
Anthony Smyth · 如何更改禁用WPF按钮的按钮样式? 6 年前 |
Donat · 在XAML中绑定单例(UWP) 6 年前 |
Amibluesky · 扩展/减少文本块WPF/Xaml中的符号 6 年前 |
smoore4 · 访问代码隐藏中的XAML绑定 6 年前 |