List数据绑定

通常状况集合的数据绑定都是用ObservableCollection,但今天使用List作数据绑定,发现一个奇怪的问题。函数

描述:插件

List的数据当在插件加载的时候进行数据初始化(经过Add方法),发现界面展现不出来,数据没有绑定上,当把数据初始化放在构造函数中,就可以正常。code

解决:io

缘由是List在插件加载的时候已经将数据进行绑定了,此时在经过Add是通知不到的,只有借助中间变量,一次性赋值:class

//old-这样处理不正确
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "branch_no", Name = "业务部门" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "trader_id", Name = "交易员" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "operator_no", Name = "下单员" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "prod_account", Name = "项目" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "fund_account", Name = "资金帐号" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "contract_code", Name = "合约代码" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "entrust_bs", Name = "买卖方向" });
GroupFieldSrc.Add(new NameValue { IsSelected = true, Value = "offset_direction", Name = "开平仓方向" });
//处理方式
List<NameValue>GroupFieldSrc1 = new List<NameValue>();
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "branch_no", Name = "业务部门" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "trader_id", Name = "交易员" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "operator_no", Name = "下单员" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "prod_account", Name = "项目" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "fund_account", Name = "资金帐号" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "contract_code", Name = "合约代码" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "entrust_bs", Name = "买卖方向" });
GroupFieldSrc1.Add(new NameValue { IsSelected = true, Value = "offset_direction", Name = "开平仓方向" });
GroupFieldSrc = GroupFieldSrc1;

这里建议使用ObservableCollection变量

相关文章
相关标签/搜索