使用 Compact Framework 在数据网格中设置列宽 [英] Set columns width in a datagrid using Compact Framework
本文介绍了使用 Compact Framework 在数据网格中设置列宽的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试设置数据网格中列的宽度.我使用 Compact Framework 2.0 和 C#
I'm trying to set the width of the columns in my datagrid. I use Compact Framework 2.0 and C#
我试过了,但它给了我一个out of bond"的错误信息:
I tried this but it gives me an "out of bonds" error message:
foreach (DataGridColumnStyle vColumnStyle in dataGrid1.TableStyles[0].GridColumnStyles)
{
vColumnStyle.Width = 100;
}
这是用数据表填充我的数据网格的代码(仅在我尝试设置列宽时失败):
Here is the code for filling my datagrid with the datatable (only fails when I try to set the columns width):
void FillData()
{
// 1
// Open connection
string conString = "Data Source=\Program Files\smartdeviceproject2\repartocrack.sdf";
using (SqlCeConnection c = new SqlCeConnection(conString))
{
c.Open();
// 2
// Create new DataAdapter
using (SqlCeDataAdapter a = new SqlCeDataAdapter(
"SELECT codbultocomp, nombre, estado FROM envios INNER JOIN tiendas ON envios.codigodestino = tiendas.codigodestino", c))
{
// 3
// Use DataAdapter to fill DataTable
DataTable t = new DataTable();
a.Fill(t);
// 4
// Render data onto the screen
foreach (DataGridColumnStyle vColumnStyle in dataGrid1.TableStyles[0].GridColumnStyles)
{
vColumnStyle.Width = 100;
}
dataGrid1.DataSource = t;
}
}
}
推荐答案
试试这个代码:
dataGrid1.TableStyles.Clear();
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = t.TableName;
foreach (DataColumn item in t.Columns)
{
DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
tbcName.Width = 100;
tbcName.MappingName = item.ColumnName;
tbcName.HeaderText = item.ColumnName;
tableStyle.GridColumnStyles.Add(tbcName);
}
dataGrid1.TableStyles.Add(tableStyle);
这篇关于使用 Compact Framework 在数据网格中设置列宽的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文