我有一个自定义活动,有一个参数是一个字符串。但是,我不想让设计者输入任意字符串,而是希望向设计者提供一个带有选项列表的组合框,这些选项是动态的,并且从数据库加载到 List 集合中。
我的问题是我不知道如何将设计器中的组合框绑定到此列表并将选择设置为活动的 in 参数。从视觉上看,我已经让活动设计师开始工作,这只是这一步。
通常,我会用property
而不是一个InArgument
。这简化了场景:
<ComboBox ItemsSource="{Binding Path=ValidOptions}"
SelectedValue="{Binding Path=ModelItem.MyStringProperty, Mode=TwoWay}"/>
(这里 ValidOptions 是 ActivityDesigner 类上的一些 Collection 属性。MyStringProperty 是基础活动上的一些公共 get/set/ 属性,例如:
public string MyStringProperty { get; set; }
)
如果添加的话将会遇到的问题InArgument
混合的是组合框中的字符串值不能直接分配给ModelItem
期待InArgument<string>
。这可以使用自定义修复IValueConverter
在你的绑定中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)