Не удается найти открытый тип с именем PresentationUIStyleResources - PullRequest
0 голосов
/ 21 июля 2010

Я новичок в WPF и XAML, но после нескольких часов поиска в Google я не могу понять, что здесь не так. Я добавил сборку PresentationUI в качестве ссылки.

"Ссылка на тип не может найти открытый тип с именем 'PresentationUIStyleResources'. Строка 14, позиция 44."

Ошибка возникает в первой строке с 'PresentationUIStyleResources'.

Что я пытаюсь сделать, так это взять DocumentViewer по умолчанию, удалить кнопку «Печать» и найти текстовое поле. Затем я хочу добавить еще несколько кнопок и их функциональность. Но эта ошибка сдерживала меня некоторое время. Кто-нибудь знает почему?

<UserControl x:Class="MyNamespace.MyClass"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:System_Windows_Documents="clr-namespace:System.Windows.Documents;assembly=PresentationUI" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Height="353" Width="361" OverridesDefaultStyle="True">

<UserControl.Resources>

    <Style x:Key="DocumentViewerStyle1" BasedOn="{x:Null}" TargetType="{x:Type DocumentViewer}">
        <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}"/>
        <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/>
        <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
        <Setter Property="ContextMenu" Value="{DynamicResource {ComponentResourceKey ResourceId=PUIDocumentViewerContextMenu, TypeInTargetAssembly={x:Type System_Windows_Documents:PresentationUIStyleResoures}}}"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type DocumentViewer}">
                    <Border Focusable="False" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
                        <Grid Background="{TemplateBinding Background}" KeyboardNavigation.TabNavigation="Local">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="Auto"/>
                                <RowDefinition Height="*"/>
                                <RowDefinition Height="Auto"/>
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*"/>
                            </Grid.ColumnDefinitions>
                            <ContentControl Style="{DynamicResource {ComponentResourceKey ResourceId=PUIDocumentViewerToolBarStyleKey, TypeInTargetAssembly={x:Type System_Windows_Documents:PresentationUIStyleResources}}}" TabIndex="0" Focusable="{TemplateBinding Focusable}" Grid.Column="0" Grid.Row="0"/>
                            <ScrollViewer x:Name="PART_ContentHost" IsTabStop="true" TabIndex="1" Focusable="{TemplateBinding Focusable}" Grid.Column="0" Grid.Row="1" CanContentScroll="true" HorizontalScrollBarVisibility="Auto"/>
                            <DockPanel Grid.Row="1">
                                <FrameworkElement Width="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}" DockPanel.Dock="Right"/>
                                <Rectangle VerticalAlignment="top" Height="10" Visibility="Visible">
                                    <Rectangle.Fill>
                                        <LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
                                            <LinearGradientBrush.GradientStops>
                                                <GradientStopCollection>
                                                    <GradientStop Color="#66000000" Offset="0"/>
                                                    <GradientStop Color="Transparent" Offset="1"/>
                                                </GradientStopCollection>
                                            </LinearGradientBrush.GradientStops>
                                        </LinearGradientBrush>
                                    </Rectangle.Fill>
                                </Rectangle>
                            </DockPanel>
                            <ContentControl TabIndex="2" Focusable="{TemplateBinding Focusable}" Grid.Column="0" Grid.Row="2"/>
                        </Grid>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</UserControl.Resources>
<Grid>
    <DocumentViewer   x:Name="MyDocumentViewer" Style="{DynamicResource DocumentViewerStyle1}"/>
</Grid>

</UserControl>

Примечание: я в значительной степени пытался найти код для MSDN для этого, как и выше.

1 Ответ

0 голосов
/ 21 июля 2010

У вас есть опечатка в вашем XAML по указанному в позиции ошибки.Должно быть PresentationUIStyleResources вместо PresentationUIStyleResoures (проверять имена по буквам).

...