调用c#自带控件DataGridView和DataTable显示数据

By admin at 2022-03-15 • 0人收藏 • 642人看过

image.png

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add()
/*}}*/

import dotNet;
import System.Windows.Forms;
var Data = dotNet.import("System.Data");
var wf = System.Windows.Forms.Form();
DataGridView = System.Windows.Forms.DataGridView();
 
var dt = Data.DataTable("DT");
dt.Columns.Add("name");
dt.Columns.Add("txt");
var row = dt.NewRow();
row.ItemArray = { "Name1", "Txt1" };
dt.Rows.Add(row);
var dv = Data.DataView(dt);

DataGridView.DataSource=dv;
DataGridView.EditMode=2;
DataGridView.Dock = System.Windows.Forms.DockStyle.Fill;
wf.Controls.Add(DataGridView);

win.modifyStyle(wf.Handle,0xCF0000)
dotNet.setParent(wf,winform);
 
wf.Show();
 
winform.show();
win.loopMessage();

这里简单的提供个调用vs自带组件的示例. 其他的自行研究.

4 个回复 | 最后更新于 2022-04-19
2022-03-15   #1

DataView支持多列混合排序,这个是最实用的功能

dv.Sort = "name DESC, txt ASC";


2022-03-16   #2

1.png

完美嵌入,丝滑流畅。

不过DataGridView里面的DataTable好像都是作为字符串处理的,估计在C#里面要事先申明好数据类型,C#毕竟还是强类型语言。

2022-04-19   #3

我在加载多行的数据时,在dataview里拖动,会有闪烁现象,在界面winform开双缓冲这个问题仍然存在,请教如何解决?

2022-04-19   #4

回复#5 @hi_aardio :

你应该在c#调用里开启双缓冲, 不是在aardio的winform里吧

登录后方可回帖

登 录
信息栏
公告:
个人博客
专注分享
可在分享中适当提问
谢绝纯提问
否则不再提醒一律
删帖
谢谢合作!



本站域名:HtmLayout.Cn
aardio可以快速开发上位机,本站主要记录了学习过程中遇到的问题和解决办法及aardio代码分享

这里主要专注于aardio学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.

Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
本 站 主 站:Stm32cube中文网
Sciter中文在线文档Sciter在线学习文档
空间赞助:才仁机械
Loading...