WPF基础入门-Class3-WPF数据模板

WPF基础入门

Class3:WPF数据模板

1、先在cs文件中定义一些数据

cs 复制代码
public partial class Class_4 : Window
    {
        public Class_4()
        {
            InitializeComponent();
            List<Color> test = new List<Color>();
            test.Add(new Color() { Code = "Yellow", Name = "Red" });
            test.Add(new Color() { Code = "#00FF00", Name = "Green" });
            test.Add(new Color() { Code = "#0000FF", Name = "Blue" });
            //数据绑定到list
            list.ItemsSource = test;
        }
    }
    public class Color
    {
        public string Code { get; set;}

        public string Name { get; set; }
    }

2、xaml中编写模板

xml 复制代码
<Grid>
        <!--WPF数据模板-->
        <ListBox x:Name="list">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <!--通过Binding绑定了Background和Text 不用再业务代码cs中穿插控件操作-->
                        <Border
                            Width="10"
                            Height="10"
                            Background="{Binding Code}"></Border>
                        <TextBlock Margin="10, 0" Text="{Binding Name}"></TextBlock>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
</Grid>

3、效果:

相关推荐
kylezhao20194 小时前
第1章:第一节 开发环境搭建(工控场景最优配置)
开发语言·c#
钰fly7 小时前
C#文件与数据操作核心概念手册
c#
阿蒙Amon7 小时前
C#每日面试题-简述C#访问修饰符
windows·microsoft·c#
Kiyra8 小时前
WebSocket vs HTTP:为什么 IM 系统选择长连接?
分布式·websocket·网络协议·http·设计模式·系统架构·wpf
酩酊仙人10 小时前
ABP+Hangfire实现定时任务
后端·c#·asp.net·hangfire
阿蒙Amon11 小时前
C#每日面试题-属性和特性的区别
java·面试·c#
要记得喝水11 小时前
某公司C#-WPF面试题-来自nowcoder(含答案和解析)--2
c#·wpf
Joker 00712 小时前
Linux nohup命令实战指南
linux·运维·wpf
爱敲点代码的小哥15 小时前
类型转换 递归算法 编译错误 装箱和拆箱 知识点
开发语言·c#
时光追逐者16 小时前
一个 WPF 开源、免费的 SVG 图像查看控件
开源·c#·.net·wpf