加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

通过代码隐藏的C#数据绑定不适用于TextBox中的Text属性

发布时间:2020-12-15 20:54:51 所属栏目:百科 来源:网络整理
导读:我有一个带有xaml标记的文本框,如下所示: TextBox x:Name =“txtHN”Text =“{Binding Path = AN}”/ 上面的代码非常有效.但是当我将数据绑定实现从XAML更改为代码隐藏时,它不再起作用了.以下代码隐藏不再起作用: Binding textHnBinding = new Binding();
我有一个带有xaml标记的文本框,如下所示:
< TextBox x:Name =“txtHN”Text =“{Binding Path = AN}”/>

上面的代码非常有效.但是当我将数据绑定实现从XAML更改为代码隐藏时,它不再起作用了.以下代码隐藏不再起作用:

Binding textHnBinding = new Binding();
textHnBinding.Path = new PropertyPath("AN");
txtHN.SetBinding(TextBox.TextProperty,textHnBinding);

我已将textbox.datacontext设置为相同的collectionsviewsource,但代码隐藏版本不再起作用.我真的不知道什么是罪魁祸首.

我为CVS.source使用以下代码:

IEnumerable<decimal> ANListWard4 = (from s in context.IPDAN
                                                    where ward.Contains(s.CURRENTWARD)
                                                    select s.AN).Distinct().OrderBy(n => n);
                List<IPDAN> Ward4AN = new List<IPDAN>();
                foreach (decimal d in ANListWard4)
                {
                    IPDAN ward4AN1 = new IPDAN();
                    ward4AN1.AN = d;
                    Ward4AN.Add(ward4AN1);
                }

我将CVS.Source设置为Ward4AN.没有Ward4AN为null或没有数据的实例.

解决方法

在进行绑定时检查collectionViewSource是否为null.如果在添加绑定时对象为null,则绑定可能不起作用.

还要检查加载的事件是否有效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读