gpt4 book ai didi

wpf - 如何从 WPF 绑定(bind)图像

转载 作者:行者123 更新时间:2023-12-03 11:03:28 26 4
gpt4 key购买 nike

我有一组图像,这些路径在 xaml 文件中定义,如下所示

<BitmapImage
x:Key="LoginLogo"
UriSource="pack://application:,,,/AssemblyName;component/Resources/LoginLogo.png" />

在我的 view.xaml 中,我有一个图像控件,并且 Source 属性与 View Model 绑定(bind)。

View 模型中的属性:
private BitMapImage _imageSource
public BitmapImage ImageSource
{
get { return (_imageSource); }
set { this.SetValue(_imageSource, value); }
}

现在我需要将值设置为 Image Source 。这个怎么设置。

最佳答案

您将绑定(bind) Source Image 控件的属性到 View 模型属性,如下所示:

<Image Source="{Binding ImageSource}">

将 View 模型属性设置为 BitmapImage 资源可能如下所示(例如在 MainWindow 类中):
viewModel.ImageSource = (BitmapImage)Resources["LoginLogo"];

您也可以考虑将 View 模型属性的类型从 BitmapImage 更改为到基类 ImageSource .这将在您可以分配给属性的不同图像类型方面提供更大的灵 active ,例如 DrawingImageBitmapFrame等等

另一种方法是 Uri 类型的 View 模型属性。 (或 string )保存图像 URL
private Uri imageUrl
public Uri ImageUrl
{
get { return imageUrl; }
set { SetValue(imageUrl, value); }
}

你可以用同样的方式绑定(bind)它,比如 <Image Source="{Binding ImageUrl}"> (因此受益于内置的自动类型转换),但可以保存 BitmapImage 资源并直接分配一个属性值,如下所示:
viewModel.ImageUrl =
new Uri("pack://application:,,,/AssemblyName;component/Resources/LoginLogo.png");

关于wpf - 如何从 WPF 绑定(bind)图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43676101/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com