c# - DataGridView 不显示来自 DataTable C# 的列
问题描述
我的 GUI 在 Form1 中有一个 datagridview,应该由位于单独类中的数据表中的数据填充。我已经设置了绑定源和数据源,但是当我运行我的 GUI 时,datagridview 是空白的,并且不显示我的数据表中的列。在这一点上,我没有为行存储任何数据,我只是想确保我的列标题得到显示。
我查看了以下所有链接,到目前为止没有任何帮助:
这是我的代码
Form1.cs:
using System;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using Excel = Microsoft.Office.Interop.Excel;
public Form1()
{
InitializeComponent();
DataTable dataTable = LightSensor.dtOptical;
DGV.DataSource = dataTable;
}
光传感器.cs:
using System;
using System.Data;
using System.IO.Ports;
using System.Threading.Tasks;
using System.Windows.Forms;
public static DataTable dtOptical = new DataTable();
BindingSource bindingSource = new BindingSource();
private void OpticalDataSetup()
{
dtOptical.Columns.Add("Sequence");
dtOptical.Columns.Add("Date");
dtOptical.Columns.Add("Time");
}
private void OpticalDataRows()
{
DataRow row = dtOptical.NewRow();
row = dtOptical.NewRow();
row["Sequence"] = MeasSeq;
row["Date"] = DateTime.Today.ToString("MM-dd-yyyy");
row["Time"] = DateTime.Now.ToString("HH:mm:ss");
dtOptical.Rows.Add(row);
bindingSource.DataSource = dtOptical;
}
解决方案
您需要在 LightSensor 类中调用OpticalDataSetup和 OpticalDataRows的构造函数:
public LightSensor(){
OpticalDataSetup();
OpticalDataRows();
}
然后在 InitializeComponent() 之后初始化 LightSensor;
LightSensor ls = new LightSensor();
推荐阅读
- python - 为什么我的链表排序不正确?
- x86 - 如何在英特尔至强可扩展处理器上禁用 L3 缓存预取器?
- css - 无法获取 / 错误的 Angular 项目构建
- python - model.fit中的Tensorflow形状不正确
- python - 如何在带有 pyautogui 的笔记本电脑上使用 f 命令?
- javascript - wavesurfer.js 过滤器未按预期工作 [需要帮助]
- google-apps-script - 谷歌表时间戳“矩阵”
- django - 为什么 django 认为这些值不同?
- bash - 如何在 sudoers.d 文件中添加 DEBIAN_FRONTEND=noninteractive?
- c# - 执行 com.android.build.gradle.internal.tasks.workers$actionfacade 时发生故障 详情见控制台