Ich habe eine Gridview enthält 30 Spalten, wo einige Spalten muss ich einzelne Spalte oben setzen, dh ich habe Leaf Name,Leaf Code,Leaf Value,Leaf Vendor Code,Leaf Id,Leaf ZOnal,Leaf Leveller
Spalten, wo ich eine einzige Spalte oben geben muss als Leaves Details
. Ich habe folgenden Code in rowdatabound mit keinem Erfolg, neue Single-Spalte kommt zuallererst. Könnten Sie mir bitte sagen, was ich falsch gemacht habe.Eine wichtigere Sache, die ich getan habe, ist, setze ich gridview Eigenschaft PagerSettings Position top
, so dass auf die Spitze kommen könnte Gitter als Indexwerte 1,2,3 usw.Multi-Spalten-Header in ASP.NET GridView
hier ist mein gridview
<asp:GridView ID="grdcell" runat="server" AutoGenerateColumns="False" AllowPaging="true" PageSize="13" DataKeyNames="firstname,location"
CellPadding="4" ForeColor="#333333" OnPageIndexChanging="grdNewcells_PageIndexChanging" OnRowDataBound="grdcell_RowDataBound" >
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:TemplateField HeaderText="Insert" HeaderStyle-HorizontalAlign="Left">
<HeaderTemplate>
<asp:CheckBox ID="insertall" Text="Insert All" onclick="checkAll(this);" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="insertChk" runat="server" />
</ItemTemplate>
<HeaderStyle HorizontalAlign="Left"></HeaderStyle>
</asp:TemplateField>
<asp:BoundField DataField="Leaf_NAME" HeaderText="Leaf Name" SortExpression="Leaf_NAME"></asp:BoundField>
<asp:BoundField DataField="Leaf_CODE" HeaderText="Leaf Code" SortExpression="Leaf_CODE"></asp:BoundField>
<asp:BoundField DataField="Leaf_Value" HeaderText="Leaf Value" SortExpression="Leaf_Value"></asp:BoundField>
<asp:BoundField DataField="LeafVENDOR_CODE" HeaderText="Leaf Vendor Code" SortExpression="LeafVENDOR_CODE"></asp:BoundField>
<asp:BoundField DataField="Leaf_ID" HeaderText="Leaf Id" SortExpression="Leaf_ID"></asp:BoundField>
<asp:BoundField DataField="Leaf_ZOnal" HeaderText="Leaf ZOnal" SortExpression="Leaf_ZOnal"></asp:BoundField>
<asp:BoundField DataField="Leaf_Leveller" HeaderText="Leaf Leveller" SortExpression="Leaf_Leveller"></asp:BoundField>
<asp:BoundField DataField="Loaction" HeaderText="Loaction" SortExpression="Loaction"></asp:BoundField>
und die Zusammenarbeit de, was ich in row data bound
tat, wie unten
GridViewRow gvRow = e.Row;
if (gvRow.RowType == DataControlRowType.Header)
{
if (gvRow.Cells[1].Text == "Leaf_NAME")
{
gvRow.Cells.Remove(gvRow.Cells[1]);
GridViewRow gvHeader = new GridViewRow(0, 0, DataControlRowType.DataRow, DataControlRowState.Insert);
TableCell headerCell0 = new TableCell()
{
Text = "Leaves Details",
HorizontalAlign = HorizontalAlign.Center,
RowSpan = 6
};
gvHeader.Cells.Add(headerCell0);
grdcell.Controls[0].Controls.AddAt(0, gvHeader);
}
}
Isit erreichbar ?? – peter
Ich hatte die gleiche Frage wie @peter. Ich musste in meiner aktuellen Arbeit an vielen Stellen etwas Ähnliches machen, aber ich verwende den umgekehrten Ansatz: eine einzelne Spalte mit einem TemplateField, das die Unterspalten enthält. – ConnorsFan
ist es die gleiche Frage ?? hast du den Code? – peter