【问题标题】:WPF How to rebind image control in ListView to new source?WPF 如何将 ListView 中的图像控件重新绑定到新源?
【发布时间】:2017-03-07 07:56:03
【问题描述】:

我有一个列表视图,用于显示和编辑具有绑定到列表视图数据模板中的图像控件的字节数组的记录。我希望用户能够选择不同的图像来更改和保存与记录关联的图像,所以我有一个打开文件选择器对话框的按钮。选择文件后,我将其保存到数据库中,并且我希望图像控件更新为新图像。

我一直在尝试通过将图像保存在按钮单击事件中,然后尝试通过可视化树从代码中找到图像控件,然后从那里设置它的源。没有运气。我一直在使用 Visual Tree 帮助器返回项目容器中的控件列表,这可以正常工作,但它不会将图像控件添加到列表中,因为当涉及到图像控件时,

if (_child is control)

返回假。 VS 还告诉我它无法将 System.Windows.Controls.Control 转换为 System.Windows.Controls.Image。它将为文本框执行此操作。

有没有更好的方法来更新图像源?

【问题讨论】:

  • 如果您将可视化树助手用于调试以外的任何事情,那么您做错了。
  • 好的,我是 WPF 的新手,那么如何最好地从选定的项目中找到图像控件并从后面的代码中更改它的源代码?
  • 您不应该使用代码隐藏。阅读一些关于 WPF 的教程,例如 wpftutorial.net。
  • 我已更新问题以获取更多信息

标签: c# wpf listview controls


【解决方案1】:

它只是一个FrameworkElement 可以在the documentation 或程序集元数据中看到,这是因为它不是交互式元素。它在同一个命名空间中,因为我想拥有太多的命名空间会变得很痛苦。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-11
    • 2011-07-20
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-12
    • 2016-03-29
    相关资源
    最近更新 更多