如何将示例数据从 class 中类型为 List<string> 的变量绑定到 XAML(设计)页面

How can I bind sample data from a variable of type List<string> inside a class to the XAML (design) page

我一直在使用绑定到示例数据,以便我可以了解应用程序在运行时的外观。

在我不得不绑定到 List<> 之前,一切都很顺利。我做了一个示例应用程序来演示这个问题。

Person.cs

public string FullName { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
public List<string> Friends { get; set; }

MainViewModelSampleData.xaml

<vm:MainViewModel
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:WhosebugQuestion.ViewModels">


<vm:MainViewModel.Items>
    <vm:Person FullName="Homer Simpson" Age="45" Sex="Male" />
    <vm:Person FullName="Bruce Wayne" Age="32" Sex="Male" Friends="" />
</vm:MainViewModel.Items>

我可以让设计视图正确显示 string FullNameint Agestring Sex

我不知道也想不通的是如何绑定来自 List<string> Friends 的数据,以便我可以在设计视图上查看它。

解决方案是 'extracting' 好友值

<vm:Person FullName="Bruce Wayne" Age="32" Sex="Male">
        <vm:Person.Friends>
            <x:String>First</x:String>
            <x:String>Second</x:String>
        </vm:Person.Friends>

取决于App的版本x:String是必需的还是直接文字

<vm:Person FullName="Bruce Wayne" Age="32" Sex="Male">
        <vm:Person.Friends>
            First
            Second
        </vm:Person.Friends>

最后一个选项是添加以下命名空间

xmlns:System="clr-namespace:System;assembly=mscorlib"

<phone:PhoneApplicationPage.DataContext>
    <local:Person Name="ww">
        <local:Person.Friends>
            <System:String>one</System:String>
            <System:String>one</System:String>
        </local:Person.Friends>
    </local:Person>