首页 > 编程语言 >WPF C# construct Grid,DataGrid,Button manually

WPF C# construct Grid,DataGrid,Button manually

时间:2024-05-06 17:58:30浏览次数:30  
标签:manually C# dg Button System gd Grid new using

using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Newtonsoft.Json;
using System.IO;

namespace WpfApp95
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            this.WindowState = WindowState.Maximized;
            InitGrid();
        }

        DataGrid dg { get; set; }
        private void  InitGrid()
        {
            Grid gd = new Grid(); 
            RowDefinition row1=new RowDefinition();
            RowDefinition row2=new RowDefinition();
            row2.Height = new GridLength(50); 
            gd.RowDefinitions.Add(row1);
            gd.RowDefinitions.Add(row2); 
            ColumnDefinition column1 = new ColumnDefinition();
            ColumnDefinition column2 = new ColumnDefinition();
            column2.Width = new GridLength(150);
            gd.ColumnDefinitions.Add(column1);  
            gd.ColumnDefinitions.Add(column2);
            gd.ShowGridLines= true;
            
            dg = new DataGrid();
            Grid.SetRow(dg, 0);
            Grid.SetRowSpan(dg, 2);
            Grid.SetColumn(dg, 0);
            dg.Name = "dg";
            Button btn = new Button();
            btn.Content = "Load Data";
            Grid.SetRow(btn,1); 
            Grid.SetColumn(btn,1);
            btn.Click += Btn_Click;
            gd.Children.Add(btn);
            gd.Children.Add(dg);
            this.Content = gd;
        }

        private void Btn_Click(object sender, RoutedEventArgs e)
        {
            List<Book> booksList = new List<Book>();
            for (int i = 0; i < 10000; i++)
            {
                Book bk = new Book();
                bk.Id = i + 1;
                bk.ISBN = $"ISBN_{i + 1}";
                bk.Name = $"Name_{i + 1}";
                bk.Summary = $"Summary_{i + 1}";
                bk.Title = $"Title_{i + 1}";
                bk.Topic = $"Topic_{i + 1}";
                booksList.Add(bk);
            }
            dg.ItemsSource = booksList; 
        }

        //private void Button_Click(object sender, RoutedEventArgs e)
        //{            
        //    List<Book> booksList = new List<Book>();
        //    for(int i=0;i<100;i++)
        //    {
        //        Book bk = new Book();
        //        bk.Id = i + 1;
        //        bk.ISBN = $"ISBN_{i + 1}"; 
        //        bk.Name = $"Name_{i + 1}";
        //        bk.Summary = $"Summary_{i + 1}";
        //        bk.Title = $"Title_{i + 1}";
        //        bk.Topic = $"Topic_{i + 1}";
        //        booksList.Add(bk);
        //    }
             
        //    SaveFileDialog dlg = new SaveFileDialog();
        //    dlg.FileName = $"{DateTime.Now.ToString("yyyyMMddHHmmssffff")}Books.json";
        //    if (dlg.ShowDialog() == true)
        //    {
        //        string jsonStr = JsonConvert.SerializeObject(booksList, Formatting.Indented);
        //        File.WriteAllText(dlg.FileName, jsonStr);
        //    }
        //}

    }

    public class Book
    {
        public int Id { get; set; }
        public string ISBN { get; set; }
        public string Name { get; set; }
        public string Summary { get; set; }
        public string Title { get; set; }
        public string Topic { get; set; }
    }

}

 

标签:manually,C#,dg,Button,System,gd,Grid,new,using
From: https://www.cnblogs.com/Fred1987/p/18175525

相关文章

  • centos安装fastdfs
    安装前的准备检查Linux上是否安装了gcc、libevent、libevent-devel点击查看代码yumlistinstalled|grepgccyumlistinstalled|greplibeventyumlistinstalled|greplibevent-devel————————————————​如果没有安装,则需进行安装点击查看......
  • Linux基础——BClinux8.2 排查vmcore异常宕机问题
     一、无法/var/crash生成文件1、参考配置:https://cloud.tencent.cn/developer/article/2367955 2、BCoe8.2调整配置   3、手动生成crashi.参考:参数详解https://blog.csdn.net/tombaby_come/article/details/134038949echo1>/proc/sys/kernel/sysrqechoc>/......
  • 在Windows下用navicat,连接虚拟机的MySQL
    在Windows下用navicat,连接虚拟机的MySQL目录(一)防火墙1.查看防火墙状态2.关闭防火墙(二)登录MySQL1.登录2.查看MySQL端口号(三)连接navicat1.点击连接2.新建连接3.连接成功(四)修改虚拟机MySQL端口号1.打开配置文件2.修改端口号3.重启MySQL下面是报错原因总结:(下次有再补......
  • openGauss core问题定位
    core问题定位磁盘满故障引起的core问题GUC参数log_directory设置不正确引起的core问题开启RemoveIPC引起的core问题详情查看:https://opengauss.org详情查看:https://docs-opengauss.osinfra.cn......
  • openGauss GUC参数log_directory设置不正确引起的core问题
    GUC参数log_directory设置不正确引起的core问题问题现象数据库进程拉起后出现coredump,日志无内容。原因分析GUC参数log_directory设置的路径不可读取或无访问权限,数据库在启动过程中进行校验失败,通过panic日志退出程序。处理办法GUC参数log_directory设置为合法路径,具体请参......
  • c++中文编码问题
    std::string或者constchar*,本质上都是二进制,不包含编码属性,其编码信息来源于赋值语句,QString以utf16编码,默认构造或赋值的字面量假定为utf8,若是其它编码比如ansi,可以调用QString::fromLocal8bit一、字面量的编码取决于文件,即如果在c++源文件中有直接赋值1)、constchar*s="......
  • C语言加强
    变量、指针和关键字两个口诀:变量变量,能变,就是能读能写,必定在内存(RAM)里指针指针,保存的是地址,32位处理器中的地址都是32位的,无论是什么类型的指针变量,都是4字节指针对于32位处理器里面,地址是32位的,所以指针的大小为4字节,sizeof(p)=4,sizeof(*p)=指针所指向的......
  • openGauss CopyManager类简介
    CopyManager类简介CopyManager是openGaussJDBC驱动中提供的一个API接口类,用于批量向openGauss中导入数据。CopyManager的继承关系CopyManager类位于org.postgresql.copyPackage中,继承自java.lang.Object类,该类的声明如下:publicclassCopyManagerextendsObject构造方法......
  • 「云渲染平台」3D模型渲染是CPU还是GPU?
    在数字艺术创作和工程设计这两个领域中,将三维模型转换成逼真的二维图像的过程被称为模型渲染,这是一种对计算资源要求极高的技术活动。在渲染三维模型时,CPU和GPU各自承担着不同的任务。现在,让我们来了解在模型渲染的过程中,主要是消耗CPU资源还是GPU资源。一、模型渲染对CPU和GPU......
  • 如何查找Lenovo XClarity Controller 的 MIB 文件
    描述本文介绍了为运行LenovoXClarityController(LXCC)的Lenovo服务器查找和下载MIB文件的过程。程序转至数据中心支持。lenovo.com 。在搜索栏中,输入Lenovo服务器型号名称,然后单击自动搜索结果中正确服务器下的“下载” 。注意:在此示例中,将使用SR650。在“您在寻......