我有以下XAML文本框:多值转换器不accesssable
<TextBox x:Name="TextBoxShippingLabel" Margin="0,10,-2,2" TextWrapping="Wrap">
<TextBox.Text>
<MultiBinding StringFormat="{}{0} {1}
{2}
{3}
{4}
{5}
{6} {7}" Converter="{local:ShippingLabelConverter}">
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[FirstName]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Surname]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Department]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Organisation]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Street]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Suburb]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[State]" />
<Binding ElementName="dataGridOutstandingOrders" Path="SelectedItem[Postcode]" />
</MultiBinding>
</TextBox.Text>
</TextBox>
我试图把它绑定到一个转换器,表示如下:
namespace CIC.OrderProcessor
{
public class ShippingLabelConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var output = new StringBuilder();
foreach (var param in values.Cast<string>().Where(param => param != "None"))
{
output.Append(param);
}
return output.ToString();
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
}
但是Visual Studio是告诉我以下内容:
名称“ShippingLabelConverter”不存在于名称空间 “clr-namespa CE:CIC.OrderProcessor”。
无效的标记扩展类型:预测的类型是 “IMultiValueConverter”,实际的类型是“ShippingLabelConverter”
我已经检查了命名空间我的转换器类,它是绝对正确的。它也继承了'IMultiValueConvterer'这个类型,所以我有点不确定从哪里开始 - 这些错误看起来应该是显而易见的,但是我看不到我应该做的任何改变。
额外信息
从我的XAML本地命名空间的声明如下:
<Window x:Class="CIC.OrderProcessor.MainWindow"
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:local="clr-namespace:CIC.OrderProcessor"
请问您可以在xaml中显示Converter类的命名空间和本地命名空间的定义 – Daniel