我有两种形式,一种是'编辑'类型形式,我可以从用户pc中选择多个图像并将它们上传到存储它们的本地数据库。这工作正常,我可以访问它们并看到它们填充在我的列表框中。
但是,为了节省时间,我还希望能够在另一种形式上显示这些图像 - 是的,我必须使用其他形式。我对数据绑定相当新,但我仍然理解它已经足够广泛地实现它,我只是无法弄清楚如何从表单2上的图像对象数据绑定到表单1上的列表框。最终的想法是创建幻灯片类型应用程序(仅应用程序的一部分)。
答案 0 :(得分:1)
您可以直接从第二种形式的数据库绑定。由于您现在已将图像存储在本地数据库中,因此可以使用第二种形式轻松检索它们。
答案 1 :(得分:1)
按表格I假设Window
,所以有多种方法可以做到这一点......
MVVM - 这将有一个绑定到窗口1的视图模型实例,它将保存所选图像的URI,同一个视图模型实例可以绑定到另一个窗口,它将在另一个窗口显示图像
如果其中一个表单已被标记为另一个表单的Owner
,那么可以引用两个表单中的两个元素。
E.g。如果Window1
是Window2
的OwnerWindow,那么......
window2.Owner = window1;
window2.Show();
在Window1
上,将Window.Tag
属性与元素的所选项属性绑定...
<Window x:Class="...Window1"
...
Tag="{Binding SelectedItems, ElementName=MyListBox, Mode=OneWay}">
<ListBox x:Name="MyListBox" .... />
</Window>
然后在Window2
上,您可以使用数据绑定到数据上下文,通过Owner.Tag
属性
<Window x:Class="...Window2"
...>
<ListBox x:Name="ThumbnailListBox"
DataContext="{Binding Owner.Tag,
RelativeSource={RelativeSource
AncestorType={x:Type Window}}"
ItemsSource="{Binding}" />
</Window>
希望这会有所帮助......