簡體   English   中英

如何在組合的語義縮放ListView上顯示文本?

[英]How do I get Text to Display on a grouped Semantic Zoom ListView?

我在語義縮放和對列表視圖進行分組時遇到了麻煩,希望有人可以幫助我。

當我進入ZoomedOutView時,分組存在,但是沒有顯示任何分組文本。

這是我的CollectionViewSource

<CollectionViewSource x:Name="ControlPanelGroup" IsSourceGrouped="True" Source="{Binding HeaderList}"/>

語義縮放

<SemanticZoom x:Name="semanticZoom" ViewChangeStarted="SemanticZoom_ViewChangeStarted" ScrollViewer.ZoomMode="Enabled"  FocusVisualPrimaryBrush="White" FontFamily="Segoe UI" BorderThickness="0,0,0,0" Margin="0,0,0,10" VerticalAlignment="Stretch">
                                <SemanticZoom.ZoomedOutView>
                                    <ListView x:Name="Headers">
                                        <ListView.ItemTemplate>
                                            <DataTemplate>
                                                <TextBlock Text="{Binding HeaderList.Key}" />
                                            </DataTemplate>
                                        </ListView.ItemTemplate>
                                    </ListView>
                                </SemanticZoom.ZoomedOutView>

                                <SemanticZoom.ZoomedInView>
                                    <ListView x:Name="Links" ItemsSource="{Binding Source={StaticResource ControlPanelGroup}}">
                                        <ListView.ItemTemplate>
                                            <DataTemplate>
                                                <TextBlock Text="{Binding Path=Title}"  Margin="25,5,0,5" />
                                            </DataTemplate>
                                        </ListView.ItemTemplate>
                                        <ListView.GroupStyle>
                                            <GroupStyle>
                                                <GroupStyle.HeaderTemplate >
                                                    <DataTemplate>
                                                        <TextBlock Margin="10,5,0,5" Text="{Binding Key}" />
                                                    </DataTemplate>
                                                </GroupStyle.HeaderTemplate>
                                            </GroupStyle>
                                        </ListView.GroupStyle>
                                    </ListView>
                                </SemanticZoom.ZoomedInView>
                            </SemanticZoom>

加載數據

var HeaderSerializer = new DataContractSerializer(typeof(List<ULSSLinkData>));
        using (var stream = await ApplicationData.Current.LocalFolder.OpenStreamForReadAsync("ControlPanelLinks"))
        {
            HeaderList = (List<ULSSLinkData>)HeaderSerializer.ReadObject(stream);
        }

        var result = from c in HeaderList group c by c.Key;

        this.ControlPanelGroup.Source = result;

        var collectionGroups = ControlPanelGroup.View.CollectionGroups;
        ((ListViewBase)this.semanticZoom.ZoomedOutView).ItemsSource = collectionGroups;

列表中的值:

public class ULSSLinkData
{     
    public string Title { get; set; }
    public string URL { get; set; }
    public string Key { get; set; }
    public bool EXT { get; set; }
}

這是GIF 語義縮放

我不知道為什么,但是將zoomedoutview更改為對此進行了魔術修復。

<SemanticZoom.ZoomedOutView>
                                <ListView x:Name="Headers">
                                    <ListView.ItemTemplate>
                                        <DataTemplate>
                                            <TextBlock Text="{Binding Group.Key}" />
                                        </DataTemplate>
                                    </ListView.ItemTemplate>
                                </ListView>
                            </SemanticZoom.ZoomedOutView>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM