我是 .Net 的初学者,所以也许我的问题对你们中的一些人来说似乎很幼稚。
我在 WinForm 项目中有 DataGridView 表:
它包含三列(图像、组合框和文本框列)。
知道如何创建并将行附加到此表吗?
先感谢您!
我是 .Net 的初学者,所以也许我的问题对你们中的一些人来说似乎很幼稚。
我在 WinForm 项目中有 DataGridView 表:
它包含三列(图像、组合框和文本框列)。
知道如何创建并将行附加到此表吗?
先感谢您!
您创建一个数据源,然后将数据源绑定到网格的 DataSource 属性。然后将记录添加到数据源。
// create data source
BindingList<Shape> dataSource = new BindingList<Shape>();
// add record to data source
dataSource.Add(new Shape("Some Contour", "Circle", "Some Name"));
// bind data source
yourDataGridView.DataSource = typeof(BindingList<Shape>);
yourDataGridView.DataSource = dataSource;
将每列的 DataPropertyName 设置为与 Shape 类中的字段名称相匹配。
DataGridViewTextBoxColumn colName = new DataGridViewTextBoxColumn();
colName.DataPropertyName = "Name";
yourDataGridView.Columns.Add(colName );
但是,我建议您改用虚拟模式来保持数据分离和解耦。
如果您希望接受用户的输入,您必须在此页面上创建一个表单,用户可以使用该表单提供输入。获取这些值并将它们添加到 DataTable。以下是显示它的示例片段:
DataTable dt = new DataTable();
dt.Columns.Add("Contour",typeof(string)); //I am assuming that you will store path
//of image in the DataTable
dt.Columns.Add("Shape",typeof(string));
dt.Columns.Add("Name",typeof(string));
当您收到来自用户的输入时,继续向 DataTable 添加新行:
DataRow row = dt.NewRow();
row["Contour"] = txtContourPath.Text;
row["Shape"] = ddlShape.SelectedValue;
row["Name"] = txtName.Text;
dt.Rows.Add(row);
将上面的 DataTable 分配给 GridView 的 DataSource 属性。
dgv.DataSource = dt;
您可以使用方法:
希望我能帮助你。