选择数据表的某些列
我有一个数据表,想知道是否可以选择某些列并将数据输入到表中。 列如下列出
| col1 | col2 | col3 | col4 | col5 | col6 | col7 | col8 | col9 | col10 | col11 |
我想选择列col1,col2 col6,col7,col3。 并在数据表内的行的gridview中显示数据..目前我使用的代码是低于并且选择某些数据。 我不是从SQL中选择数据,而是从另一个存储在数据表中的Excel中选择数据..但是我需要另一个区域中的其他列。此数据正在写入一个表中的单词
for (int i = 1; i < table.Rows.Count; i++)
{
for (int j = 0; j < table.Columns.Count; j++)
{
if (j == 0)
{
val = filteredData.Rows[row][col].ToString();
}
else
{
val = filteredData.Rows[row][col].ToString();
if (val == "-" || val == "")
{
val = filteredData.Rows[row][col].ToString();
}
else
{
val = Convert.ToString(Math.Round(Convert.ToDouble(filteredData.Rows[row][col]), MidpointRounding.AwayFromZero));
}
}
table[j, i].TextFrame.Text = val;
col++;
}
首先将表格存储在视图中,然后从该视图中选择列到新表格中。
System.Data.DataTable table = new System.Data.DataTable();
for (int i = 1; i <= 11; i++)
table.Columns.Add("col" + i.ToString());
for (int i = 0; i < 100; i++)
{
System.Data.DataRow row = table.NewRow();
for (int j = 0; j < 11; j++)
row[j] = i.ToString() + ", " + j.ToString();
table.Rows.Add(row);
}
System.Data.DataView view = new System.Data.DataView(table);
System.Data.DataTable selected = view.ToTable("Selected", false, "col1", "col2", "col6", "col7", "col3");
使用示例数据来测试此方法,我发现:创建ADO.NET DataView只显示选定的列
我们也可以尝试这样,
string[] selectedColumns = new[] { "Column1","Column2"};
DataTable dt= new DataView(fromDataTable).ToTable(false, selectedColumns);
我会问的问题是,如果您不需要它们,为什么在DataTable中包含额外的列?
也许你应该修改你的SQL select语句,以便在填充DataTable时查看你正在查找的特定条件。
您还可以使用LINQ将您的DataTable查询为Enumerable,并创建一个仅表示特定列的List对象。
除此之外,隐藏您不需要的DataGridView列。
链接地址: http://www.djcxy.com/p/68829.html