2009-05-28 62 views
0

我试图在Visual Studio 2008中看到由其他人(前员工)开发的表单,但在尝试查看MainForm时仍然遇到以下错误。 xaml(它无法在设计器视图中加载):Visual Studio 2008 WPF设计器将不会加载我的表格

错误无法创建类型为“NumericTextBox”的实例。 d:\ MySolution \ GUI \ MainForm.xaml

我的解决办法是有组织这样的事情(简称为简洁 - 它是这样发生错误的最后一行):

\solution 
    \Gui 
     \App.xaml 
     \MainForm.xaml 
    \Utils 
     \NumericTextBox.cs 

我的MainForm。 xaml看起来像这样:

<Window x:Class="MyCompany.MyDepartment.MyProject.MainForm" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:local="clr-namespace:MyCompany.MyDepartment.MyProject" 
     xmlns:myproject="clr-namespace:MyCompany.MyDepartment.MyProject;assembly=MyProject" 
     xmlns:dsp="clr-namespace:MyCompany.MyDepartment.MyProject.DSP;assembly=MyProject" 
     xmlns:filters="clr-namespace:MyCompany.MyDepartment.DSP.Filters;assembly=DSP" 
     xmlns:mydepartment="clr-namespace:MyCompany.MyDepartment.Utils;assembly=Utils" 
     xmlns:scope="clr-namespace:MyCompany.MyDepartment;assembly=ScopeControl" 
     Title="MyProject" Height="900" Width="1024" 
     Loaded="Window_Loaded" 
     Closing="Window_Closing" ResizeMode="CanResize" Icon="/MyProjectGUI;component/MyProjectGUI.ico"> 

    <Window.Resources> 
    ... 
    </Window.Resources> 

    <DockPanel> 
     <StackPanel DockPanel.Dock="Left" CanVerticallyScroll="True" CanHorizontallyScroll="False"> 
      <GroupBox Name="SensorControlGroup" Header="Sensor Control"> 
      ... 
      </GroupBox> 
      <GroupBox Header="Sensor State"> 
       <StackPanel Name="SensorStackPanel"> 
        <Expander Name="EnvironmentExpander" Header="Environment"> 
        ... 
        </Expander> 
        <Expander Name="SynthExpander" Header="Synthesiser" IsExpanded="True"> 
         <Border Margin="2" Background="White" Padding="3"> 
          <Grid>         
           <Grid.ColumnDefinitions> 
            <ColumnDefinition Width="120"/> 
            <ColumnDefinition Width="60"/> 
            <ColumnDefinition Width="60"/> 
           </Grid.ColumnDefinitions> 
           <Grid.RowDefinitions> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
            <RowDefinition/> 
           </Grid.RowDefinitions> 
           <Label Grid.Column="0" Grid.Row="0">Frequency (MHz):</Label> 

           <mydepartment:NumericTextBox Grid.Column="1" 
                x:Name="SynthFrequency" DecimalPlaces="3" 
                Maximum="0" Minimum="0" /> 

什么可能会导致该错误?一切都编译好,但the application crashes when I run it。我希望这两个问题可能是一个相关的问题。

回答

0

好吧,事实证明,虽然Visual Studio设置为使用.net框架的v3.5,但您需要单独安装框架的v3.5 - 似乎我只安装了v2。让这个成为所有其他人在同样的问题中挣扎的教训!

1

你提到的两个问题几乎肯定是相关的。在这两种情况下,都会处理XAML文件以创建控件。一个用于设计目的,另一个用于运行时。如果在解析文件时在运行时产生异常,那么设计师也会遇到文件问题。

我认为你需要关注原始错误,然后再回到这个错误。人们几乎可以肯定地修复另一个。

+0

谢谢Jarad我会继续调查:-) – 2009-05-28 14:26:06

相关问题