Silverlight 4:在DataTemplate中使用Converter的"无效的XA​​ML"

Tho*_*mar 5 silverlight xaml designer visual-studio-2010 silverlight-4.0

也许你可以帮我理解为什么我在尝试在a上执行以下操作时,在Visual Studio 2010设计器中遇到未处理的异常"Invalid XAML" Page.

我有一个Converter名称DateTimeConverter,可以将日期转换为德语日期字符串.转换器工作正常.我已经包含了命名空间并将以下内容添加到页面的资源中:

<navigation:Page.Resources>
    <myClasses:DateTimeConverter x:Key="dateTime" />
</navigation:Page.Resources>
Run Code Online (Sandbox Code Playgroud)

现在我有一个列表框,我想绑定到一个对象列表.我在代码中进行绑定,但我想定义数据模板.因此我在我的布局中添加了以下内容:

<ListBox x:Name="lbConversation" BorderBrush="#00000000">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <Border BorderThickness="0" Padding="4">
                <StackPanel Orientation="Vertical">
                    <TextBlock Text="{Binding Message, Mode=OneWay}" />
                    <TextBlock Text="{Binding TimeStamp, Mode=OneWay, Converter={StaticResource dateTime}}" />
                </StackPanel>
            </Border>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
Run Code Online (Sandbox Code Playgroud)

当我跑步时这很好用.但是,在代码部分中,数据模板的代码不足,设计人员说"无效的XA​​ML".当我删除该Converter=...部件时,此错误消失了.

这是设计师的错误吗?我能做什么?

编辑
顺便说一下:完全相同的代码不会在WPF项目中抛出错误!

小智 7

在我找到解决方案时,只需添加这个问题.

我的案例的解决方案在这里:http://forums.silverlight.net/post/618518.aspx

显然,您的项目名称或程序集名称中不能包含空格字符.D'哦!

希望能帮助到你.