如何在resources.xaml中创建一个列表(我将它用作我的列表框的itemsource)以及如何在ViewModel中访问它?感谢
答案 0 :(得分:1)
这可能会有所帮助:Silverlight: Declaring a collection of data in XAML?
然后,您可以使用您声明集合的控件的Resources属性来访问它。
编辑例如:
您需要声明一个新的集合类型,因为您无法在XAML中声明泛型类型:
using System.Collections.Generic;
namespace YourNamepace
{
public class Genders : List<string>
{
}
}
然后在添加必要的命名空间后在XAML中声明一个列表:
xmlns:local="clr-namespace:YourNamespace"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
...
<Window.Resources>
<local:Genders x:Key="AvailableGenders">
<sys:String>Female</sys:String>
<sys:String>Male</sys:String>
</local:Genders>
</Window.Resources>
你当然可以在里面用更复杂的数据结构来声明它。然后,将其用作ListBox的ItemsSource:
<ListBox ItemsSource="{Binding Source={StaticResource AvailableGenders}}"/>
有效,我刚刚对它进行了测试: - )