【问题标题】:Binding WPF DataTemplate to Dictionary <int, Page>将 WPF DataTemplate 绑定到字典 <int, Page>
【发布时间】:2014-08-07 00:37:27
【问题描述】:

所以我正在尝试将 XAML DataTemplate 绑定到字典。 示例:

pages: {
    1: {
        thumb: "https://www.sample.com",
        image: "https://www.sample.com"
    },
    2: {
        thumb: "https://www.sample.com",
        image: "https://www.sample.com"
    }
}

等等。

基本上,我为每个请求获得了可变数量的页面,并且我通过创建带有 key/values 的 Dictionary 解决了动态反序列化,但我似乎找不到将所述 Dictionary 绑定到XAML 数据模板。

在这个特定的视图中,我试图显示来自给定内容项的“拇指”图像网格。关于我应该如何处理这个问题的任何想法?如果有这种方法,最好使用 ItemsSource 或 Binding 等轻松完成。

【问题讨论】:

  • 您是否创建了相同的视图模型?问题中样本数据的预期输出是什么?也许发布相同的屏幕截图。

标签: c# wpf xaml dictionary


【解决方案1】:

好的,所以我想我找到了解决方法。 图像绑定到我设置的 ListBox 中的 DataTemplate 中的图像。 我正在寻找一种方法来拥有一个带有 WrapPanel 的 ListBox,它可以显示字典中的图像 - 在这种情况下,字典中每个页面的拇指,其中有可变数量的 &lt;int&gt; 键。

虽然我想知道是否可以像上面描述的那样将图像源绑定到字典,但我发现我暂时可以使用它:

private static void GenerateThumbsAndImages()
    {
        foreach (Page i in CurrentContentInfo.Pages.Values)
        {
            PageImages.Add(new Uri(i.image));
            PageThumbs.Add(new Uri(i.thumb));
        }
    }

然后我将其与我的 XAML 绑定:

<ListBox x:Name="ThumbView" ItemsSource="{x:Static local:Posts.PageThumbs}" ... >
<Image x:Name="PageThumbnailImage" Source="{Binding OriginalString}" ... />

如果有人知道我可以如何直接绑定到字典,那就太好了,但目前还可以。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    • 2011-03-27
    • 2011-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多