簡體   English   中英

TreeViewItem不能用datacontext進行選擇

[英]TreeViewItem not selectible with datacontext

當我通過DataContext設置treeviewitem的標頭時,它會添加幾個可點擊的填充像素,然后將文本放入不可點擊的狀態。 我會張貼一張圖片; 藍色:可點擊,紅色:不可點擊。

存儲數據的類:

public class TagClass
{
    public string TagClassMagic { get; set; }
    public ITagClass RawClass { get; set; }
    public List<TagEntry> TagEntries = new List<TagEntry>();

    public IList Children
    {
        get
        {
            return new CompositeCollection()
                {
                    new CollectionContainer() { Collection = TagEntries }
                };
        }
    }

}
public class TagEntry
{
    public string TagFileName { get; set; }
    public ITagEntry RawTag { get; set; }
}

用於顯示數據的XAML:

<TreeView x:Name="tvTagList" Margin="15, 40, 15, 50" ItemsSource="{Binding}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Background="{x:Null}" BorderBrush="{DynamicResource ExtryzeAccentBrushSecondary}" BorderThickness="2" ScrollViewer.CanContentScroll="True" Foreground="White">
    <TreeView.Resources>
        <HierarchicalDataTemplate DataType="{x:Type  DataBind:TagClass}" ItemsSource="{Binding Children}" >
            <TreeViewItem Header="{Binding TagClassMagic}" />
        </HierarchicalDataTemplate>
        <HierarchicalDataTemplate DataType="{x:Type DataBind:TagEntry}"  >
            <TreeViewItem Header="{Binding TagFileName}" />
        </HierarchicalDataTemplate>
    </TreeView.Resources>
</TreeView>

嘗試刪除這些:

<TreeViewItem Header="{Binding TagClassMagic}" />
<TreeViewItem Header="{Binding TagFileName}" />

而是相應地為TagEntry添加數據模板 - 在這些數據模板中只放置簡單的文本塊

暫無
暫無

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

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