如何在网格视图中显示检索到的数据

本文关键字:检索 数据 显示 网格 视图 | 更新日期: 2023-09-27 18:01:53

如何在网格视图中逐行显示方法作为输出的数据?这必须在不使用数据库的情况下完成。请建议。

如何在网格视图中显示检索到的数据

你是在说asp.net webforms中的GridView,还是Windows Forms中的GridView ?如果你正在谈论一个WebForms GridView,你可以绑定任何数据集合到GridView。一般来说,我使用ListView来更好地控制标记。

假设你有一个对象和它的集合,

public class MyObject
{
    public string Name { get; set; }
    public string Address { get; set; }
    //.......
}
//run this code in OnInit, public override OnInit(....)....
private List<MyObject> Items = new List<MyObject>();
MyObject mObj = new MyObject() { Name="Test", Address="SomeAddress" };
dataGrid.DataSource = Items;
dataGrid.DataBind();

使用<%# Eval("Name") %>和<%# Eval("Address") %>来获取MyObject的迭代值。

这也适用于ListView。我喜欢listview的原因是listview有Layout、Item、Alternating Item、EmptyData和InsertItem方法的模板。它使您可以100%控制用于呈现底层数据源的标记。

在这两个平台中都不需要使用数据库。在。net中,数据源并不意味着后台数据库。它的意思是提供数据的东西。可以是上面的集合,也可以是数据库数据源。

实际上它归结为任何实现IEnumerable的东西

现在对于Windows窗体,它基本上是相同的,但你不需要做任何标记等…该控件有一个GUI,并做所有这些,你可以控制列的宽度等…

List<MyObject> items = new List<MyObject>();
items.Add(new MyObject() { Name = "Bob", Address = "101 Some Stree SomeCity SomeState, 11111" });
dataGridView1.DataSource = items;
dataGridView1.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;