WPF的绑定机制提供了非常便利的数据更新途径,在实际业务中,我们可以会遇到我们的UI组件,需要绑定到数据源上的某个数组中的指定的索引项。这种场景相对来讲是比较少用……

实际上,使用起来还是非常简单的,只需要再我们绑定的数据属性上,增加索引编号即可。

前端示例代码:

   <Window x:Class="WpfApp3.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp3"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <!--此处代码是关键-->
        <TextBlock Text="{Binding [0].Name}"/>
    </Grid>
</Window>

后端测试代码:


        public class TestProperty
        {
            public string Name { get; set; }
        }

        public MainWindow()
        {
            InitializeComponent();

            TestProperty[] testProperties = new TestProperty[2];

            testProperties[0] = new TestProperty
            {
                Name = "我是第一个,哈哈!"
            };

            testProperties[1] = new TestProperty
            {
                Name = "我是第二个"
            };

            this.DataContext = testProperties;
        }

启动后效果如图所示:

绑定已经成功工作了,这里需要注意,如果索引不存在,该绑定也不会出现异常,只是保持默认值显示,此时的绑定也是同样生效的。

欢迎转载分享,请关注微信公众号,将同步更新博客,方便查看!

承哥技术交流小作坊


本文会经常更新,请阅读原文: https://huchengv5.gitee.io//post/WPF-%E5%A6%82%E4%BD%95%E7%BB%91%E5%AE%9A%E5%88%B0%E6%95%B0%E7%BB%84%E6%95%B0%E6%8D%AE%E6%BA%90%E4%B8%8A%E6%8C%87%E5%AE%9A%E7%B4%A2%E5%BC%95%E7%9A%84%E9%A1%B9%E4%B8%8A.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名胡承(包含链接: https://huchengv5.gitee.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系