我最近从visual basic 5切换到visual basic .NET,我正在尝试学习WPF将旧程序从Windows Forms(使用visual basic 5编写)转换为WPF和VB.NET。
在旧程序中,我有一个组合框,其中包含从访问数据库加载的信息(带有item_id和item_description的简单表)。单击组合框中的项目会导致将id保存在类中(将其信息保存在数据库的不同表中)
现在我正在尝试在WPF中重新创建相同的东西。
我想知道是否有可能让组合框显示项目列表中的项目,将其itemsource绑定到项目列表视图模型,但是当我更改所选项目时更新另一个视图模型。
我不知道它是否可行(我老实说,我试图在网上找到答案,但寻找“组合框多重数据绑定”我最终找到了对我没用的信息)
答案 0 :(得分:1)
不确定我是否真的明白你的意思,但你可以设置一个itemource,它将是组合框的内容。也可以将组合框的选定值绑定到另一个属性。
<ComboBox ItemSource="ListItems" SelectedValuePath="item_id" SelectedValue={Binding IdSelected} DisplayMemberPath="item_description"/>
在此示例中,ListItems将是包含项目的列表,SelectedValuePAth将是组合框SelectedValue属性将返回的属性的名称。 SelectedValue绑定到需要此信息的其他对象的属性。 DisplayMemberPath是将向用户显示的属性。
您可以使用CboItem.Itemssource = listItem在运行时设置itemssource,它可以是任何类型的集合(List of,dataset,array等)。
希望有所帮助。