DataBinding学习之如何通过XAML来构建后台类对象?

遇到一个问题,如何在XAML中初始化类中的成员属性,换一种官方的说法,是通过XAML来构建后台类对象

首先分清wpf中的类

定义一个子类

cs 复制代码
    public class Student
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
    }

如何在XAML中访问这个类?

XML 复制代码
<Window x:Class="Wpf.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="450" Width="800">
    <StackPanel Background="LightBlue">
        <StackPanel.DataContext>
            <local:Student Id="6" Age="29" Name="Tim"/>
        </StackPanel.DataContext>
        <Grid>
            <StackPanel>
                <TextBox Text="{Binding Path=Id}" Margin="5"/>
                <TextBox Text="{Binding Path=Name}" Margin="5"/>
                <TextBox Text="{Binding Path=Age}" Margin="5"/>
            </StackPanel>
        </Grid>
    </StackPanel>
</Window>

1、首先在XAML中增加一个映射

如果不在同一个程序集需要加上";assembly=程序集名称"。

我们需要为Student类重写一个合适的ToString

cs 复制代码
  public class Student
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
        public override string ToString()
        {
            return string.Format("{0} by {1}\npublished {2}", Id, Name, Age);
        }
    }

ok然后就能运行出来了!

相关推荐
The_cute_cat1 小时前
Ajax和Axios的初步学习
前端·学习·ajax
amazinging2 小时前
北京-4年功能测试2年空窗-报培训班学测开-第四十三天
python·学习
祁思妙想3 小时前
八股学习(五)---MySQL
学习
虾球xz3 小时前
CppCon 2018 学习:THE MOST VALUABLE VALUES
开发语言·c++·学习
丰锋ff4 小时前
计网学习笔记第2章 物理层(灰灰题库)
笔记·学习
Chef_Chen4 小时前
从0开始学习R语言--Day39--Spearman 秩相关
开发语言·学习·r语言
天水幼麟11 小时前
动手学深度学习-学习笔记(总)
笔记·深度学习·学习
天水幼麟13 小时前
动手学深度学习-学习笔记【二】(基础知识)
笔记·深度学习·学习
沧海一笑-dj13 小时前
【51单片机】51单片机学习笔记-课程简介
笔记·学习·51单片机·江科大·江科大学习笔记·江科大单片机·江科大51单片机
老虎062714 小时前
JavaWeb(苍穹外卖)--学习笔记04(前端:HTML,CSS,JavaScript)
前端·javascript·css·笔记·学习·html