Инструментарий Wpf. Свяжите заголовок столбца сетки данных с DynamicResource

PhpEdit имеет созданный в отладчике, но я обычно заканчиваю тем, что использовал эхо (); и print_r (); старомодный путь!!

6
задан Ray 16 March 2009 в 21:52
поделиться

2 ответа

Попробуйте следующее:

<Window.Resources>
    <sys:String x:Key="HeaderText">Header Text</sys:String>
    <Style x:Key="HeaderTextStyle" TargetType="{x:Type Primitives:DataGridColumnHeader}">
       <Setter Property="Content" Value="{DynamicResource HeaderText}" />
    </Style>
</Window.Resources>
<Grid>
    <tk:DataGrid>
        <tk:DataGrid.Columns>
            <tk:DataGridTextColumn HeaderStyle="{StaticResource HeaderTextStyle}" Width="100"/>
        </tk:DataGrid.Columns>
    </tk:DataGrid>
</Grid>

DataGrid WPF Toolkit имеет столбцы DataGridColumns, которые не являются визуальными элементами управления, поэтому у них есть несколько забавных правил. Одно из этих забавных правил состоит в том, что только свойство Binding может быть Binding - все остальное должно быть статическим. Чтобы обойти это, вы можете создать ресурс статического стиля, который содержит динамический контент.

8
ответ дан 8 December 2019 в 14:47
поделиться

Если вы просто хотите изменить заголовок и не хотите возиться со стилями, сделайте это. (кредит принадлежит вышеупомянутому плакату)

    <Window.Resources>
    <sys:String x:Key="HeaderText">Header Text</sys:String>
    <TextBlock x:Key="HeaderSR" Text="{DynamicResource HeaderText}"/>
</Window.Resources>
<Grid>
    <tk:DataGrid>
        <tk:DataGrid.Columns>
            <tk:DataGridTextColumn Header="{StaticResource HeaderSR}" Width="100"/>
        </tk:DataGrid.Columns>
    </tk:DataGrid>
</Grid>
1
ответ дан 8 December 2019 в 14:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: