我在ControlLibrary中定义的UserControl中使用WPFToolkit库中的DatePicker。
如果我从另一个应用程序使用我的UserControl,我会收到一个ApplicationException:“找不到类型'Microsoft.Windows.Controls.DatePicker'。编译时使用的程序集可能与加载时使用的程序集不同,但缺少类型。”
如果我从引用我的UserControl的Application中添加对WPFToolkit库的程序集引用,我可以避免此异常。有没有办法在不必在我的应用程序中引用WPFToolkit程序集的情况下执行此操作?
这是我的UserControl的xaml:
<UserControl x:Class="View.DateRangeView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:toolkit="clr-namespace:Microsoft.Windows.Controls;assembly=WPFToolkit"
mc:Ignorable="d"
d:DesignHeight="50" d:DesignWidth="300">
<UserControl.Resources>
<ResourceDictionary Source="/ReuxablesLegacy;component/candy.xaml" />
</UserControl.Resources>
<Grid VerticalAlignment="Top">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto" SharedSizeGroup="enable" />
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" >
<toolkit:DatePicker Margin="3" SelectedDate="{Binding Path=LowRange}" Width="100" />
<TextBlock Text=" To " Margin="3" VerticalAlignment="Center" />
<toolkit:DatePicker Margin="3" SelectedDate="{Binding Path=HighRange}" Width="100" />
</StackPanel>
<CheckBox Grid.Column="1" Content="Enable" Margin="3" VerticalAlignment="Center" IsChecked="{Binding Path=Enabled}" />
</Grid>
</UserControl>
答案 0 :(得分:1)
您必须向程序集添加对程序集和第三方程序集的引用。