[c#]如何从另一个 dll 中的视图模型绑定图像?

标签: dll C#
发布时间: 2013/12/8 9:41:03
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

WPF 窗口中的项目和图像控件与它了另一个 dll 项目,这将会在窗口视图模型写此 dll 项目包括一个 png 文件,称为"h.png",我会将它作为一个源绑定到然后 WPF 窗口项目。我设置的图像具有约束力,但它不工作,任何人都能告诉我该如何从另一个 dll 项目绑定图像源?

我的 c# 代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Media.Imaging;

namespace vm
{
    public class VMClass
    {
        BitmapImage img;

        public BitmapImage Img
        {
            get { return img; }
            set { img = value; }
        }
        public VMClass()
        {
            img = new BitmapImage(new Uri("h.png", UriKind.RelativeOrAbsolute));


        }
    }
}

我的 xaml:

<Window x:Class="ImageBindingApplication.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:vm="clr-namespace:vm;assembly=vm"
        Title="MainWindow" Height="350" Width="525">
    <Window.DataContext>
        <vm:VMClass/>
    </Window.DataContext>
    <Grid>
        <Border BorderThickness="2" BorderBrush="Red">
            <Image Source="{Binding Img}"/>
        </Border>
    </Grid>
</Window>

解决方法 1:

1) 使确定那 h 图像作为资源 (您可以检查这图片属性中) 添加:

enter image description here

2) 更改为您的 uri 字符串 (msdn):

 new BitmapImage(new Uri("/vm;component/h.png", UriKind.RelativeOrAbsolute));
赞助商