WPF глобально разрабатывает TextBlock внутри DataGrid

Я столкнулся с очень странной проблемой. Я пытаюсь применить глобальный стиль к нескольким элементам управления вDataGrid, Большинство из них работают именно так, как я ожидал. Тем не менее, стиль дляTextBlock никогда не применяется Стили дляComboBox, TextBox, Labelи некоторые другие все применяются к своим соответствующим элементам управления, но не кTextBlock, Я максимально упростил код, и проблема все еще присутствует. Я предоставил пример кода ниже.

Мне нужно, чтобы стиль был применен кTextBlock и я не хочу применять его вручную кTextBlock.

<DataGrid ItemsSource="{Binding Data}" AutoGenerateColumns="False">
    <DataGrid.Resources>
        <Style TargetType="TextBlock">
            <Setter Property="ANY_TEXTBLOCK_PROPERTY" Value="VALUE" />
        </Style>
    </DataGrid.Resources>
    <DataGrid.Columns>
        <DataGridTemplateColumn Header="Test">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="Globably Applied" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>

More Information:

Global styles for any control other than TextBlock (TextBox, ComboBox, etc.) work properly. Defining the global style inside the DataTemplate will work properly. Directly assigning the style to the TextBlock using an x:Key will work. Global styles for DataGridCell using TextElement.PROPERTY will get applied to a TextBlock.

В то время как некоторые из них будут применять стиль кTextBlockУ них там свои проблемы. Непосредственное назначение стиля или определение стиля где-то в пределахDataGridColumn будет означать, что мне придется применять стиль более одного раза. С использованиемTextElement.PROPERTY наDataGridCell будет применять стиль больше, чем простоTextBlock контролирует и будет ограничивать количество свойств, которые вы можете установить.

Ответы на вопрос(2)

Ваш ответ на вопрос