【问题标题】:xaml designer viewer doesn't load未加载 xaml 设计器查看器
【发布时间】:2010-02-19 14:52:39
【问题描述】:

当我在主应用程序 (Application.xaml) 上添加资源时,我的页面不会加载其设计查看器,因为它告诉我一个资源 (DesignerItem.xaml) 中存在错误。否则在运行时它可以完美运行。

Application.xaml:

<Application xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                        
                       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                       x:Class="GesHoras.App"
                       StartupUri="WinMain.xaml">

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <!--Vista Theme -->
                <ResourceDictionary Source="pack://application:,,,/PresentationFramework.Aero;V3.0.0.0;31bf3856ad364e35;component/themes/aero.normalcolor.xaml" />


                <ResourceDictionary Source="Themes/TabControl.xaml"/>
                <ResourceDictionary Source="Themes/TabItem.xaml"/>
                <ResourceDictionary Source="Themes/GridView.xaml"/>
                <ResourceDictionary Source="Themes/ListView.xaml"/>
                <ResourceDictionary Source="Themes/Button.xaml"/>
                <ResourceDictionary Source="Themes/RepeatButton.xaml"/>
                <ResourceDictionary Source="Themes/GroupBox.xaml"/>
                <ResourceDictionary Source="Themes/TextBox.xaml"/>               
                <ResourceDictionary Source="Themes/ComboBox.xaml"/>
                <ResourceDictionary Source="Themes/TreeView.xaml"/>
                <!--<ResourceDictionary Source="Themes/Menu.xaml"/>-->
                <ResourceDictionary Source="Themes/ProgressBar.xaml"/>
                <ResourceDictionary Source="Themes/ToolTip.xaml"/>

                <ResourceDictionary Source="Designer_Controls/DesignerItem.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>

    </Application.Resources>

</Application>                      

还有我的 DesignerItem.xaml:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:s="clr-namespace:GesHoras.Designer_Controls">
    <!-- Resource dictionary entries should be defined here. -->    

  <!-- DragThumb Default Template -->
  <Style TargetType="{x:Type s:DragThumb}">
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type s:DragThumb}">
          <Rectangle Fill="Transparent"/>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>

  <!-- DesignerItem Style -->
  <Style TargetType="{x:Type s:DesignerItem}">    
    <Setter Property="MinWidth" Value="20"/>
    <Setter Property="MinHeight" Value="15"/>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type s:DesignerItem}">
          <Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
            <!-- PART_DragThumb -->
            <s:DragThumb x:Name="PART_DragThumb" Cursor="Hand"/>

            <!-- PART_ContentPresenter -->
            <ContentPresenter x:Name="PART_ContentPresenter"
                              Content="{TemplateBinding ContentControl.Content}"
                              Margin="{TemplateBinding ContentControl.Padding}"/>                           

          </Grid>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>

</ResourceDictionary>

它告诉我错误在 DesignerItem.xaml 中:

<Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">

出现的消息错误是:

属性“路径”没有价值

谁能帮帮我?

谢谢!

【问题讨论】:

  • 嗯...看起来拼图的某些部分丢失了。你能重新编辑你的问题吗?
  • 提问者肯定漏掉了一些他的观点。他的代码不够清晰,与提出的问题无关。 -1 这个问题。

标签: wpf xaml path


【解决方案1】:

DesignerItem.xaml:

    <ResourceDictionary
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
          xmlns:s="clr-namespace:GesHoras.Designer_Controls">
      <!-- Resource dictionary entries should be defined here. -->    

          <!-- DragThumb Default Template -->
          <Style TargetType="{x:Type s:DragThumb}">
            <Setter Property="Template">
               <Setter.Value>
                   <ControlTemplate TargetType="{x:Type s:DragThumb}">
                       <Rectangle Fill="Transparent"/>
                   </ControlTemplate>
               </Setter.Value>
            </Setter>
         </Style>

         <!-- DesignerItem Style -->
         <Style TargetType="{x:Type s:DesignerItem}">    
            <Setter Property="MinWidth" Value="20"/>
               <Setter Property="MinHeight" Value="15"/>
                  <Setter Property="Template">
                    <Setter.Value>
                      <ControlTemplate TargetType="{x:Type s:DesignerItem}">
                          <Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">
                                <!-- PART_DragThumb -->
                                <s:DragThumb x:Name="PART_DragThumb" Cursor="Hand"/>

                            <!-- PART_ContentPresenter -->
                                <ContentPresenter x:Name="PART_ContentPresenter"
                                   Content="{TemplateBinding ContentControl.Content}"
                                    Margin="{TemplateBinding  ContentControl.Padding}"/>                            

                       </Grid>
                    </ControlTemplate>
               </Setter.Value>
            </Setter>
         </Style>

  </ResourceDictionary>

问题出在:

<Grid DataContext="{Binding RelativeSource={RelativeSource TemplatedParent}}">

它告诉我路径丢失或没有价值。

谢谢!

【讨论】:

    猜你喜欢
    • 2016-03-09
    • 2016-01-15
    • 2014-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多