Pregunta

He encontrado el siguiente código para mostrar el elemento seleccionado en una vista de árbol cuando el enfoque se ha ido, pero estoy teniendo problemas para mover el código a App.xaml por lo que cualquier control de usuario podría utilizarlo.

Esto hace lo que yo quiero

<TreeView x:Name="trviewArchives" Width="141" Height="154" Canvas.Left="20" Canvas.Top="167"  Background="{x:Null}" BorderBrush="#FF081827" BorderThickness="0">
            <TreeView.Resources>
                <TreeViewItem x:Key="bold" FontWeight="Bold" />
                <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Peru"/>
                <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black"/>
                <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Peru"/>
            </TreeView.Resources>

Pero no puedo encontrar la manera de hacer un estilo fuera de él. He intentado lo siguiente, que las costuras sintácticamente correcta

            <Style x:Key="TreeStyle" TargetType="{x:Type TreeView}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="TreeViewItem">
                        <TreeViewItem>
                            <Setter x:Name="bold" Property="FontWeight" Value="Bold" />
                        </TreeViewItem>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

Y en el control de usuario

<TreeView x:Name="trviewArchives" Width="141" Height="154" Canvas.Left="20" Canvas.Top="167"  Background="{x:Null}"  Style="{DynamicResource ResourceKey=TreeStyle}"
                  BorderBrush="#FF081827" BorderThickness="0" >

En un momento el código de control de usuario reconoció el estilo, pero en la actualidad su actuación "recurso Treestyle no se pudo resolver".
¿Qué estoy haciendo mal?
¿Es necesario que Treestyle alcance desde su App.xaml en que es un (padre) de espacio de nombres diferente? Una vez que tengo que usar el estilo, ¿cuál es la sintaxis para establecer las otras propiedades?

¿Fue útil?

Solución

El proyecto fue inicialmente configurado como una biblioteca de clases. En algún lugar en el archivo de proyecto, supongo, le dice WPF si mirar en el App.xaml, y si es un ClassLibrary nunca se verá allí, a menos que específicamente dice que mire en ese archivo (hice una combinación de diccionario que parece funcionar).

Me cuenta de esto al recordar que anteriormente era una biblioteca de clases, así que copié el código para un nuevo proyecto y todo estaba bien.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top