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

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

首先分清wpf中的类

定义一个子类

    public class Student
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
    }

如何在XAML中访问这个类?

<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

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

相关推荐

  1. 通过 React 构建界面

    2023-12-08 07:52:03       51 阅读
  2. 如何通过结构体观察内存对齐和填充

    2023-12-08 07:52:03       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-08 07:52:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-08 07:52:03       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-08 07:52:03       87 阅读
  4. Python语言-面向对象

    2023-12-08 07:52:03       96 阅读

热门阅读

  1. 你知道模拟养成游戏如何开发吗?

    2023-12-08 07:52:03       69 阅读
  2. MLX:苹果发布新的机器学习框架

    2023-12-08 07:52:03       55 阅读
  3. OSPF/Open Shortest Path First

    2023-12-08 07:52:03       57 阅读
  4. SSL安全证书怎么查看证书类型?

    2023-12-08 07:52:03       68 阅读
  5. # 如何在Nginx中配置服务器负载均衡(SLB)

    2023-12-08 07:52:03       60 阅读
  6. 【.NET Core】Linq查询运算符(二)

    2023-12-08 07:52:03       45 阅读
  7. 设置Ubuntu或树莓派系统,允许root用户ssh方式连接

    2023-12-08 07:52:03       60 阅读
  8. Ubuntu 20.04 安装Orthanc

    2023-12-08 07:52:03       54 阅读