我在Windows窗体独立应用程序中使用数据网格视图在VB.NET中将项目显示为excel电子表格。我有一个名为CostTypes的表,列名为[CostTypeID,CostType],值为[1,外部]和[2,内部](这些是常量,但可以向表中添加更多值)。
我想在DataGridView 中创建名称为[External,Internal]的列。如果我直接使用数据绑定,我会得到[CostTypeID,CostType]列,这不是我想要的。
如果有人可以解释如何在运行时在datagridview中创建列,或者如何使用LINQ从数据库中检索数据,那么[External,Internal]就会变成很棒的列。
提前致谢。
答案 0 :(得分:0)
您可以使用listView显示一行中的项目
像这样的东西
<asp:ListView ID="NewsLV" runat="server">
<ItemTemplate>
<td id="Td1" runat="server" valign="top" style="width: 33%;">
<asp:Label ID="titleLabel" runat="server" Text='<%# Eval("CostType") %>' CssClass="GridTitle" />
<br />
<div style="padding: 2px;">
<asp:Label ID="descriptionLabel" runat="server" Text='<%# Eval("CostTypeID") %>'
Font-Size="X-Small" />
</div>
</td>
</ItemTemplate>
<LayoutTemplate>
<table id="Table1" runat="server" border="0" style="">
<tr id="itemPlaceholderContainer" runat="server">
<td id="itemPlaceholder" runat="server">
</td>
</tr>
</table>
</LayoutTemplate>
</asp:ListView>
答案 1 :(得分:0)
答案 2 :(得分:0)
您可以做的是创建一个Sub,为您创建列。当你这样做时,你有很多控制权。这是一个例子:
With DataGridView1
.AutoGenerateColumns = False
Dim columnCostType As New DataGridViewTextBoxColumn
With columnCostType
.HeaderText = "Cost Type"
.DataPropertyName = CustomObject.CostType
.Name = CustomObject.CostType
End With
.Columns.Add(columnCostType)
End With