首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PivotViewer v2动态采集和深度缩放图像

PivotViewer v2动态采集和深度缩放图像
EN

Stack Overflow用户
提问于 2012-01-09 06:29:17
回答 2查看 2.3K关注 0票数 1

我使用的是随Silverlight5发布的PivotViewer v2。我已经开始使用PivotViewer的新数据绑定功能,直接绑定到从服务器传递过来的数据对象,并使用ItemTemplate在PivotViewer中显示这些对象。

使用CXML,我可以为pivot查看器(它是一个JIT集合)预先生成DZC/DZI,但是我不知道如何使用Deep Zoom图像和新的带有数据绑定的Pivotviewer。如何在数据绑定的集合的项模板中显示深度缩放图像?

我尝试过使用PivotViewerMultiSizeImage类(下面的XAML)和PivotViewerMultiScaleSubImageHost类。我下面的例子几乎行得通:它显示了一个图像,但似乎停留在100像素的水平-没有深度缩放。我还在DZI中尝试了MultiScaleImage控件,但没有成功-它会立即生成一个OutOfMemory异常。

有人知道如何在新的PivotViewer中通过数据绑定获得深度缩放功能吗?

代码语言:javascript
运行
复制
<pivot:PivotViewer.ItemTemplates>
<pivot:PivotViewerItemTemplate>

<pivot:PivotViewerMultiSizeImage Width="100" Height="100">
     <pivot:PivotViewerMultiSizeImage.Sources>
           <pivot:PivotViewerMultiSizeImageSource MaxHeight="100" MaxWidth="100" UriSource="{Binding Images[2]}" />
           <pivot:PivotViewerMultiSizeImageSource MaxHeight="300" MaxWidth="300" UriSource="{Binding Images[3]}" />
           <pivot:PivotViewerMultiSizeImageSource MaxHeight="500" MaxWidth="500" UriSource="{Binding Images[4]}" />
           <pivot:PivotViewerMultiSizeImageSource MaxHeight="700" MaxWidth="700" UriSource="{Binding Images[5]}" />
           <pivot:PivotViewerMultiSizeImageSource MaxHeight="20000" MaxWidth="20000" UriSource="{Binding Images[6]}" />
     </pivot:PivotViewerMultiSizeImage.Sources>
</pivot:PivotViewerMultiSizeImage> 

</pivot:PivotViewerItemTemplate>
</pivot:PivotViewer.ItemTemplates>
EN

回答 2

Stack Overflow用户

发布于 2012-02-03 15:41:39

我已经实现了绑定到一个对象集合,但对图像使用了一个深度缩放集合。我使用了Excel工具,但只给了它图像的路径(按名称排序)和一个名称。我没有使用cxml文件,但使用了所有其余的深度缩放图像文件。我向集合中的数据对象添加了一个名为Img的属性。Img是该对象在图像集合中的图像编号索引(从0开始)。然后,我的PivotViewer ItemTemplate绑定到此属性。CollectionSource属性被设置为我的图像集合xml文件的路径(在生成的cxml中命名)。

代码语言:javascript
运行
复制
            <Visualizer:MyPivotViewer x:Name="RedemptionPivot" >
                <Pivot:PivotViewer.ItemTemplates>
                    <Pivot:PivotViewerItemTemplate >
                        <Pivot:PivotViewerMultiScaleSubImageHost ImageId="{Binding Img}" CollectionSource="http://www.redemptionlive.com/Visualizer5/RedemptionCards_files/e3tbc2s0.4td.xml"/>
                    </Pivot:PivotViewerItemTemplate>
                </Pivot:PivotViewer.ItemTemplates>
                <Pivot:PivotViewer.PivotProperties>
                    <Pivot:PivotViewerStringProperty Id="Name" Options="CanFilter,CanSearchText" DisplayName="Name" Binding="{Binding Name}" />
                    <!--The rest of the properties go here-->
                </Pivot:PivotViewer.PivotProperties>
            </Visualizer:MyPivotViewer>
票数 0
EN

Stack Overflow用户

发布于 2012-11-29 02:32:10

您将获得100x100的图像,因为您将其指定为控件的大小。更改的大小

<pivot:PivotViewerMultiSizeImage Width="100" Height="100">

<pivot:PivotViewerMultiSizeImage Width="2000" Height="2000">

或者大到足以让最大的图像显示出来。此外,我不确定这是否重要,但我没有在我最大的图像上放置MaxHeight/MaxWidth。

这对我很有效,谢谢你半途而废,因为你引导我走上了正确的道路,获得了像数据绑定一样的深度缩放功能!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8781935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档