我这几天天天都在用这种方法表达,只是我的是类别(相当于你的姓名),嘿绝对可行Dim comm As OleDbDataAdapter = New OleDbDataAdapter("select 类别, * from valuelist order by 类别,材料名称", conn) comm.Fill(dataset_show, "valuelist") Dim number As Single Dim number2 As Single = 1 For number = 0 To dataset_show.Tables("valuelist").Rows.Count - 1 If number <> 0 Then If dataset_show.Tables("valuelist").Rows(number).Item("类别") = dataset_show.Tables("valuelist").Rows(number - number2).Item("类别") Then dataset_show.Tables("valuelist").Rows(number).Item("类别") = "" number2 = number2 + 1 Else number2 = 1 End If End If Next show.DataSource = dataset_show.Tables("valuelist").DefaultView show.DataBind()
zai在PAGE范围申请一个全局STRING[],大小等于DATAGRID的PAGESIZE,
首先第一条ITEM事件绑定的时候,直接把第一条的名字写进去,
然后就一条条的判断,如果在STRING[]有,就把这个ITEM的ITEM.CELL[0].TEXT = “”
就OK了
ItemCreated、 ItemDataBound 还是其他,能否举个例子
<HTML>
<HEAD>
<title>显示主次关系数据的例子</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body ms_positioning="GridLayout">
<form id="FrmDataGrid" method="post" runat="server">
<P align="center">
<asp:HyperLink id="HyperLink1" style="Z-INDEX: 101; LEFT: 64px; POSITION: absolute; TOP: 40px"
runat="server" Width="88px" NavigateUrl="WebForm2.aspx">HyperLink</asp:HyperLink>
<asp:HyperLink id="HyperLink2" style="Z-INDEX: 102; LEFT: 72px; POSITION: absolute; TOP: 80px"
runat="server" NavigateUrl="WebForm3.aspx">HyperLink</asp:HyperLink><asp:datagrid id="DataGrid1" runat="server" Width="345px" Height="184px" BorderWidth="2px" AutoGenerateColumns="False"
CellSpacing="0" CellPadding="0" ShowHeader="False" BorderColor="#0099FF" style="Z-INDEX: 103; LEFT: 240px; POSITION: absolute; TOP: 40px">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
<TR>
<TD bgColor="#3399ff"><B>订单号:
<%# DataBinder.Eval(Container.DataItem, "OrderID") %>
</B>
</TD>
</TR>
<TR>
<TD align="right">
<asp:DataGrid id=DataGrid2 runat="server" AutoGenerateColumns="False" BorderColor="#33FF33" DataKeyField="OrderID" DataSource='<%# ((System.Data.DataRowView)Container.DataItem).CreateChildView("OrderRelation") %>'>
<HeaderStyle Font-Bold="True" ForeColor="#CC0066" BackColor="#99ccff"></HeaderStyle>
<Columns>
<asp:BoundColumn Visible="False" DataField="OrderID" ReadOnly="True"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="产品名称">
<HeaderStyle Width="300px"></HeaderStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "ProductName") %>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="UnitPrice" HeaderText="单价"></asp:BoundColumn>
<asp:BoundColumn DataField="Quantity" HeaderText="数量">
<HeaderStyle Width="75px"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="Discount" HeaderText="折扣">
<HeaderStyle Width="70px"></HeaderStyle>
</asp:BoundColumn>
</Columns>
</asp:DataGrid></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid></P>
</FONT></form>
</body>
</HTML>
comm.Fill(dataset_show, "valuelist")
Dim number As Single
Dim number2 As Single = 1
For number = 0 To dataset_show.Tables("valuelist").Rows.Count - 1
If number <> 0 Then
If dataset_show.Tables("valuelist").Rows(number).Item("类别") = dataset_show.Tables("valuelist").Rows(number - number2).Item("类别") Then
dataset_show.Tables("valuelist").Rows(number).Item("类别") = ""
number2 = number2 + 1
Else
number2 = 1
End If
End If
Next
show.DataSource = dataset_show.Tables("valuelist").DefaultView
show.DataBind()
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
if(e.Item.Index>0)
{
在这里完成你要完成的操作
}
}
if(e.Item.Text==DataGrid1.Items[e.Item.Index-1][0].ToString())
{
e.Item[0].Text=" ";//如果相同,则改写该单元格值
}
if (e.Item.Index==-1 || e.Item.Index<1) return; //没有记录或者记录为1则不进行判断
if(e.Item[0].Text==DataGrid1.Items[e.Item.Index-1][0].ToString()) //注意:Item[0].Text
{
e.Item[0].Text=" ";//如果相同,则改写该单元格值
}
http://expert.csdn.net/Expert/topic/2863/2863473.xml?temp=.3807184
导的时候判断一下。
对DataReader做一个循环
每次判断前面一个[name]是不是于这个相同,相同的不要输出,不相同的输出