如果此错误在使用功能区控件的类中的new()方法中断时,出现Ribbon控件库的错误。Microsoft Ribbon窗口抛出异常
类型“System.TypeInitializationException”的一个例外发生在WpfPluggableApp.exe但在用户代码
附加信息没有被处理的:关于“Microsoft.Windows.Controls.Ribbon.RibbonWindow”的类型初始值扔一个例外。
但是,当我继续我得到这个错误,而不是
型“System.Windows.Markup.XamlParseException”未处理的异常发生在PresentationFramework.dll
附加信息:“调用类型'WpfPluggableApp.MainWindow'中与指定的绑定约束匹配的构造函数抛出异常。'行号“3”和行位置“5”。
没有什么我可以看到这是会在MainWindow.Xaml的3线来实现它:
<Window x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<DockPanel>
<Menu Name="mnu" DockPanel.Dock="Top">
</Menu>
<TabControl ItemsSource="{Binding Path=ViewModels}">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter Property="IsSelected" Value="{Binding Path=isSelected,Mode=TwoWay}"/>
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<DockPanel MinWidth="120">
<Button
Command="{Binding Path=CloseCommand}"
Content="X"
Cursor="Hand"
DockPanel.Dock="Right"
Focusable="False"
FontFamily="Courier"
FontSize="9"
FontWeight="Bold"
Margin="0,1,0,0"
Padding="0"
VerticalContentAlignment="Center"
Width="16" Height="16"
IsTabStop="False"
/>
<ContentPresenter Margin="10"
Content="{Binding Path=DisplayName}"
VerticalAlignment="Center"
/>
</DockPanel>
</DataTemplate>
</Setter.Value>
</Setter>
<Setter Property="Content" Value="{Binding}" />
</Style>
</TabControl.ItemContainerStyle>
</TabControl>
</DockPanel>
下面是功能区中的XAML:
<ribbon:RibbonWindow x:Class="MainRibbonWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ribbon="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary"
Title="MainRibbonWindow"
x:Name="MainRibbonWindow"
WindowState="Maximized" MinHeight="480" MinWidth="640">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ribbon:Ribbon x:Name="Ribbon">
</ribbon:Ribbon>
<TabControl Grid.Row="1" ItemsSource="{Binding Path=ViewModels}">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter Property="IsSelected" Value="{Binding Path=isSelected,Mode=TwoWay}"/>
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<DockPanel MinWidth="120">
<Button
Command="{Binding Path=CloseCommand}"
Content="X"
Cursor="Hand"
DockPanel.Dock="Right"
Focusable="False"
FontFamily="Courier"
FontSize="9"
FontWeight="Bold"
Margin="0,1,0,0"
Padding="0"
VerticalContentAlignment="Center"
Width="16" Height="16"
IsTabStop="False"
/>
<ContentPresenter
Content="{Binding Path=DisplayName}"
VerticalAlignment="Center"
/>
</DockPanel>
</DataTemplate>
</Setter.Value>
</Setter>
<!--<Setter Property="Content" Value="{Binding}" />-->
</Style>
</TabControl.ItemContainerStyle>
</TabControl>
</Grid>
它可能是一种情况需要一双新鲜的眼睛来看它!如果您能看到问题,请告诉我。
感谢, 山姆
-----------------------编辑-------------- ---------------------------
问题已解决,我引用了错误的类库。