WPF数据绑定在内存映像到Image控件

时间:2011-01-04 18:52:10

标签: wpf data-binding

我正在使用DataGrid并尝试执行以下数据绑定

<DataTemplate>
                                    <Grid>
                                        <Image Source="{Binding Data.HeroCard1}">                                                
                                        </Image>                                            

                                    </Grid>
                                </DataTemplate>

CustomImage的类型为BitmapImage。当我跑步时,我得到错误:

必须在与DependencyObject相同的线程上创建DependencySource

问题是这些图像作为资源存储在不同的程序集中,所以我不能只指向磁盘上的某个位置

2 个答案:

答案 0 :(得分:1)

经过两个小时的挣扎后,我在这里发布,然后立即找到答案。问题是我在另一个线程上创建了BitmapImages。即使数据绑定的事件在UI线程上,也没关系。这有点加重但是我继续改变我的代码以确保图像只是始终从UI线程中的内存加载,现在它运行良好

答案 1 :(得分:0)

使用pack URI

<Image Source="pack://application:,,,/AssemblyName;component/PathToImages/MyImage.png"/>

对AssemblyName,PathToImages和MyImage.png进行操作以适应您的环境。