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然后就能运行出来了!

相关推荐
不在逃避q12 分钟前
一步一步学习使用LiveBindings()TListView进阶使用(),打造天气预报程序
服务器·数据库·学习
脚踏实地皮皮晨30 分钟前
003002004_WPF Panel 基类 官方类定义
开发语言·windows·算法·c#·wpf·visual studio
知识分享小能手39 分钟前
高等数学学习教程,从入门到精通,微分中值定理与导数的应用(5)
学习·机器学习·概率论
520拼好饭被践踏41 分钟前
JAVA+Agent学习day25
java·开发语言·学习
魔术师Dix1 小时前
StartGame:Unity TDD 外部工程指南
学习·游戏·unity·c#·测试驱动开发
小弥儿1 小时前
GitHub今日热榜 | 2026-07-31:AI Agent工作流共享赛道升温
人工智能·学习·github
小蒋学算法10 小时前
算法-M个非重叠子数组最大和II-WQS二分学习
数据结构·学习·算法
湿滑路面12 小时前
Rouyan:使用WPF/C#构建的基于LLM的快捷翻译小工具
开发语言·c#·wpf
重庆小透明13 小时前
带你从不同视角了解三大MQ
java·学习·spring·kafka·rabbitmq·rocketmq
~光~~14 小时前
【xv6学习】L0_环境配置
单片机·嵌入式硬件·学习