将Silverlight中的Listbox与从Resource中定义的DataContext绑定

时间:2011-01-05 15:51:17

标签: entity-framework silverlight-4.0 ria

如何使用DataContext选项将Silverlight中的列表框绑定。我希望在Usercontrol中定义一个资源,并希望将其用作静态资源列表框控件。

1 个答案:

答案 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"

希望它有所帮助。