WPF窗口给定的密钥不存在于字典中
我现在正在寻找相当长的一段时间来解决这个问题,到现在为止我还没有为我工作:
我有一个C#控制台应用程序,我使用设计器在一个新窗口中打开应用程序。 我提出了一个新的解决方案,并在新的解决方案中复制了窗口,现在设计者抛出了上面的异常。 程序本身运行良好,但设计者拒绝工作。
使用的代码是:
<Window ...Some Description...>
<DockPanel>...Content...>/DockPanel>
</Window>
在设计师的“窗口”中显示了这个文字:
引发异常。 XamlParseException:给定的键在字典中不存在。
堆栈跟踪:
(System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader,IXamlObjectWriterFactory writerFactory,Boolean skipJournaledProperties,Object rootObject,XamlObjectWriterSettings settings,Uri baseUri)
在System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader,Boolean skipJournaledProperties,Object rootObject,XamlAccessLevel accessLevel,Uri baseUri)
在System.Windows.Markup.XamlReader.LoadBaml(Stream stream,ParserContext parserContext,Object parent,Boolean closeStream)
在System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream,ParserContext pc)
在System.Windows.Application.LoadComponent(Uri resourceLocator,Boolean bSkipJournaledProperties)
在System.Windows.Application.LoadComponent(Uri resourceLocator)
异常位置位于XAML中的“Window”关键字处。
如果我在XAML中创建新的UserControl并且工作正常,那么只有Window似乎不起作用。
有人知道如何解决这个问题吗?
这是整个Xaml:
<Window x:Class="Interface_002.ControlWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="600" Width="1000" Title="Steering Wheel Control Window" Loaded="Window_Loaded" Closed="Window_Closed">
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="_File">
<MenuItem x:Name="miSaveConfig" Header="_Save Config" Click="miSaveConfig_Click"/>
<MenuItem x:Name="miLoadConfig" Header="_Load Config" Click="miLoadConfig_Click"/>
<Separator/>
<MenuItem x:Name="Exit" Header="_Exit" Click="Exit_Click" />
</MenuItem>
<MenuItem Header="Help">
<MenuItem x:Name="miAbout" Header="About" Click="miAbout_Click"/>
</MenuItem>
</Menu>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="250"/>
<RowDefinition Height="250"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="500"/>
<ColumnDefinition Width="500"/>
</Grid.ColumnDefinitions>
<Border Grid.Row="0" Grid.Column="0" BorderThickness="1" BorderBrush="Black">
<Grid>
...Content..
</Grid>
</Border>
<Border Grid.Row="1" Grid.Column="0" BorderThickness="1" BorderBrush="Black">
<Grid>
...Content..
</Grid>
</Border>
<Border Grid.Row="0" Grid.Column="1" BorderThickness="1" BorderBrush="Black">
<Grid>
...Content..
</Grid>
</Border>
<Border Grid.Row="1" Grid.Column="1" BorderThickness="1" BorderBrush="Black">
<Grid>
...Content..
</Grid>
</Border>
</Grid>
</DockPanel>
</Window>
编辑:
这个问题已经以某种方式解决了......我不知道问题到底是什么。 但在将解决方案加载到另一个CP上之后,当我在原始机器上重新打开该解决方案后,它再次运行...
我将您的整个XAML复制到新创建的WPF应用程序中。 我从网格中删除了“...”,并将窗口中的x:Class属性更改为项目中完整的命名空间+类的名称。 它工作正常! 问题在别的地方。 也许在网格中缺少代码。
链接地址: http://www.djcxy.com/p/30527.html上一篇: WPF Window The given Key was not present in the Dictionary