C# 为Win CE设备定制DataGrid

C# 为Win CE设备定制DataGrid,c#,datagrid,windows-ce,C#,Datagrid,Windows Ce,我正在为WindowsCE编写一个应用程序,所以我必须使用VS2008 我正在dataGrid控件中显示一些数据(DataGridView不可用!),我想对其进行自定义 grid.Columns[i].width等控件在这些控件上不起作用 我需要更改列宽和标题文本,如何实现这一点? datagrid在运行时通过以下行获取它的条目: dgLatestPositions.DataSource = items; items是一个包含对象的列表,该表有2列。 dataGrid的视图运行良好,除了这些问

我正在为WindowsCE编写一个应用程序,所以我必须使用VS2008

我正在dataGrid控件中显示一些数据(DataGridView不可用!),我想对其进行自定义

grid.Columns[i].width等控件在这些控件上不起作用

我需要更改列宽和标题文本,如何实现这一点? datagrid在运行时通过以下行获取它的条目:

dgLatestPositions.DataSource = items;
items是一个包含对象的列表,该表有2列。 dataGrid的视图运行良好,除了这些问题

编辑:也许是这样的?(它也不起作用)

编辑:

所有项目都包含在一个列表中。 文章对象看起来是这样的: 公共类更改

{
    public long coding { get; set; }
    public int amount { get; set; }
}
该表如下所示(示例)

编码|金额

0123456789 | 3

0829346128 | 4


我需要做的是调整第一列的大小并更改标题

我们也有一个需要WindowsCE支持的应用程序,必须在VS2008中完成。您非常接近,我们所做的是创建一个用于显示的基类数据网格,并添加了一个方法来添加我们想要的列—获取标题文本、绑定列源,然后是宽度。这是我们的方法,“myTblStyle”是DataGridTableStyle“t”变量

public void AddColumn(string hdr, string colName, int colWidth)
{
    DataGridTextBoxColumn tbc = new DataGridTextBoxColumn();
    tbc.HeaderText = hdr;
    tbc.MappingName = colName;
    tbc.Width = colWidth;
    myTblStyle.GridColumnStyles.Add(tbc);
}

谢谢我有“article”对象,每个对象包含2个值,这些值显示在网格中。所有对象都在一个列表中。如何使用这些作为colName?我有点困惑now@Marcel,因为我使用DataTable作为资料的来源,而不是列表,所以我只是让它知道表中的哪一列。如果你的是一张清单,一张什么的清单。列表中是否有字段/属性。如果没有其他内容,请忽略“colName”绑定并从中获取宽度。你没有描述你的“列表”对象结构是什么。。。但是从对象结构中获取字段。@Marcel,那么我认为您需要的映射只需要引用列表对象的相应“coding”和“amount”属性。绑定可能区分大小写。只需注意,您可以有一个列标题“$Amount”,并根据实际绑定将列绑定为“Amount”或“Amount”。。。因此,列标题文本与数据显示实际绑定的文本之间存在差异。我将尝试一下。非常感谢你!,注意:标题正在工作,但我仍然需要大小:/
public void AddColumn(string hdr, string colName, int colWidth)
{
    DataGridTextBoxColumn tbc = new DataGridTextBoxColumn();
    tbc.HeaderText = hdr;
    tbc.MappingName = colName;
    tbc.Width = colWidth;
    myTblStyle.GridColumnStyles.Add(tbc);
}