我使用MVVM灯,我有一个问题来实现IValueConverter。
错误信息是:
"名称BoolToColorConverter在名称空间“clr-namespace:TME.Viewmodel"
中不存在<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ignore="http://www.ignore.com"
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:Custom="http://www.galasoft.ch/mvvmlight"
x:Class="TME.MainWindow"
xmlns:l="clr-namespace:TME.Design"
mc:Ignorable="d ignore"
Height="367"
Width="681"
Title="MVVM Light Application" Background="Black" Loaded="Window_Loaded"
>
<Window.Resources>
<ResourceDictionary>
**<l:BoolToColorConverter></l:BoolToColorConverter>**
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Skins/MainSkin.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
我的另一堂课看起来像这样。
namespace TME.Design
{
public class BoolToColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value == null)
{
return new SolidColorBrush(Colors.Transparent);
}
return System.Convert.ToBoolean(value) ?
new SolidColorBrush(Colors.Red)
: new SolidColorBrush(Colors.Transparent);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
不明白为什么它找不到我的booltocolorconverter虽然Visual Studio中的xaml编辑器提供了通过intelisense选择它的机会。
小心
尔根