如何使用DataContext选项将Silverlight中的列表框绑定。我希望在Usercontrol中定义一个资源,并希望将其用作静态资源列表框控件。
答案 0 :(得分:0)
我不确定我是否帮助您,您是否希望将列表框绑定到项目的静态资源列表?,这将是一种方法:
我使用itemssource而不是使用datacontext,如果这是一个很好的方法,这就是你需要做的事情:
为每个项目定义类,并为项目列表定义另一个类
namespace Dashboard.Models
{
public class StringValue
{
#region Properties
public string Value { get; set; }
#endregion
}
public class ValueList : List<StringValue>
{ }
}
在usercontrol声明的xaml代码中添加对命名空间的引用
xmlns:LocalModels="clr-namespace:Dashboard.Models"
将静态资源添加到usercontrol
<Grid.Resources>
<LocalModels:ValueList x:Key="States">
<LocalModels:StringValue Value="--"></LocalModels:StringValue>
<LocalModels:StringValue Value="AL"></LocalModels:StringValue>
<LocalModels:StringValue Value="AK"></LocalModels:StringValue>
<LocalModels:StringValue Value="AZ"></LocalModels:StringValue>
<LocalModels:StringValue Value="AR"></LocalModels:StringValue>
<LocalModels:StringValue Value="CA"></LocalModels:StringValue>
</LocalModels:ValueList>
</Grid.Resources>
将您的列表框引用到静态资源
ItemsSource="{StaticResource States}" DisplayMemberPath="Value" SelectedValuePath="Value"
希望它有所帮助。