Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 嵌套ItemsController中的UWP样式不工作_C#_User Controls_Windows 10 Universal_Uwp Xaml - Fatal编程技术网

C# 嵌套ItemsController中的UWP样式不工作

C# 嵌套ItemsController中的UWP样式不工作,c#,user-controls,windows-10-universal,uwp-xaml,C#,User Controls,Windows 10 Universal,Uwp Xaml,我有一个用户控件,它可以显示需要显示的数据,问题是样式在最内部的ItemsControl中似乎不起作用 样式正在处理外部ItemsControl,这让我很困惑 App.Xaml <Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/Di

我有一个用户控件,它可以显示需要显示的数据,问题是样式在最内部的ItemsControl中似乎不起作用

样式正在处理外部ItemsControl,这让我很困惑

App.Xaml

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/Dictionaries/StyleDictionary.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

UserControl.xaml

<ItemsControl ItemsSource="{x:Bind Cat.Content}">
    <ItemsControl.ItemTemplate>
        <DataTemplate >
            <StackPanel>
                    <TextBlock Text="{Binding Header}" Style="{StaticResource myStyleTextBlock_Header}" />
                <ItemsControl ItemsSource="{Binding Body}">
                    <DataTemplate>
                        <StackPanel>
                            <TextBlock Style="{StaticResource myStyleTextBlock_Paragraph}" Text="{Binding Body}"/>
                        </StackPanel>
                    </DataTemplate>
                </ItemsControl>
            </StackPanel>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

我读了一些关于将样式封装在用户控件中的内容,但是如果模板中的外部样式有效,为什么第二个样式不被应用呢

编辑:

也许我应该试着解释一下我想做什么,有人可以建议一个更好的方法

现在我有一个类,有这样的东西

public class Content
{
    public string Header { get; set; }
    public List<string> Body { get; set; }
}
公共类内容
{
公共字符串头{get;set;}
公共列表主体{get;set;}
}
而用户控制就是它们

<UIControls:DisplayDossierText />

样式非常简单,它只是将文本框的样式设置为具有颜色和边距等

<Style TargetType="TextBlock" x:Key="myStyleTextBlock_PageHeader">
    <Setter Property="VerticalAlignment" Value="Center" />
    <Setter Property="FontSize" Value="30" />
    <Setter Property="FontWeight" Value="Normal" />
    <Setter Property="Margin" Value="0,0,25,15" />
    <Setter Property="Foreground" Value="#007bb8" />
</Style>

<Style TargetType="TextBlock" x:Key="myStyleTextBlock_Paragraph" BasedOn="{StaticResource myStyleTextBlock_Header}">
    <Setter Property="TextWrapping" Value="Wrap" />
    <Setter Property="Margin" Value="0,5,15,30" />
    <Setter Property="FontSize" Value="16" />
    <Setter Property="Foreground" Value="#ff00063e" />
</Style>

因此,其思想是控件显示标题,即样式中的主体集合。如上所述,标题的样式很好,但正文文本根本没有应用样式

我一直在试图找到一个很好的解决办法,最好的办法,但什么也没有找到。因此,在游戏中,我会利用我目前所拥有的,但我觉得这可能不是我想要实现的目标的最佳解决方案

目前没有代码返回,但是创建控件时创建的普通代码外壳

不管怎么说,我开始怀疑我需要朝着一个不同的方向走,并且不知道该怎么做。我找到的所有示例都是基于使用按钮或列表视图的基础设置控件样式的。虽然listview就是这样,但它不会是交互式的。它的主要目的是提供一种简单的方法来更改文本段落并将其存储在数据库中,然后将其拉出来并显示


有人吗?

我找不到
段落文本\u FontSizeWide
静态资源。你能提供你全部的
StaticResource
引用的
TextBlock
style吗?我已经对它进行了编辑,对值进行了硬编码。