Hi,
ich hoffe ihr könnte das Problem (die Fragestellung) verstehen:
Bei einem DataGridList, habe ich eine Tabellenüberschrift über 2 Rows gebunden habe (Überschrift 3):
bsp:
TableCell dgCell0 = new TableCell();
dgCell0.RowSpan = 2;
Nun will ich noch das Sortieren aller Spalten ermöglichen,
für die Spalten "Überschrift 1" und "Überschrift 2" habe ich auch schon das Sortieren fertig - und funktioniert
da ich es im HTML Code eingebunden habe, Beispiel:
bzw, hier der ganze DataGridList Aufbau:
Nun benötige ich aber noch das Sortieren für "Überschrift 3"
da ich aber diese Spalte im ItemCreate event (codeBehind)
erzeuge, weis ich nicht,
wie ich nun den DataItem dort binde, so dass ich auch diese Spalte sortieren kann
Wie kann ich das Sortieren nun auch für "Überschrift 3" machen?
bzw. wie mache ich das <%# DataBinder.Eval(Container, "DataItem.DATACOLUMNNAME1")%>
für Überschrift 3 ?
Grüße
rayman
ich hoffe ihr könnte das Problem (die Fragestellung) verstehen:
Bei einem DataGridList, habe ich eine Tabellenüberschrift über 2 Rows gebunden habe (Überschrift 3):
bsp:
TableCell dgCell0 = new TableCell();
dgCell0.RowSpan = 2;
Code:
| Irgendwas | Überschrift3 |Überschrift 1 | Überschrift 2 | ---------------+--------------------------------------- | | |
Nun will ich noch das Sortieren aller Spalten ermöglichen,
für die Spalten "Überschrift 1" und "Überschrift 2" habe ich auch schon das Sortieren fertig - und funktioniert
da ich es im HTML Code eingebunden habe, Beispiel:
Code:
<ItemTemplate> <%# DataBinder.Eval(Container, "DataItem.DATACOLUMNNAME1")%> </ItemTemplate>
bzw, hier der ganze DataGridList Aufbau:
Code:
<asp:datagrid id="_dgridList" runat="server" Width="95%" ShowFooter="True" AutoGenerateColumns="False" AllowSorting="True"> <Columns> <asp:TemplateColumn runat="server" HeaderText="Überschrift 1" SortExpression="DATACOLUMNNAME1"> <ItemStyle Width="1%" HorizontalAlign="Right" CssClass="ConditionFieldCenter"></ItemStyle> <ItemTemplate> <%# DataBinder.Eval(Container, "DataItem.DATACOLUMNNAME1")%> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn runat="server" HeaderText="Überschrift 2" SortExpression="DATACOLUMNNAME2"> <ItemStyle Width="1%" HorizontalAlign="Right" CssClass="ConditionFieldCenter"></ItemStyle> <ItemTemplate> <%# DataBinder.Eval(Container, "DataItem.DATACOLUMNNAME2")%> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn> <HeaderTemplate> Template Column 1 (Überschrift3) </HeaderTemplate> <ItemStyle Width="6%" HorizontalAlign="Right" CssClass="ConditionFieldRight"> </ItemStyle> <ItemTemplate> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:datagrid>
Nun benötige ich aber noch das Sortieren für "Überschrift 3"
da ich aber diese Spalte im ItemCreate event (codeBehind)
erzeuge, weis ich nicht,
wie ich nun den DataItem dort binde, so dass ich auch diese Spalte sortieren kann
Code:
private void _dgridList_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { DataGridItem dgItem = new DataGridItem( 1, 0, ListItemType.Header); TableCell dgCell0 = new TableCell(); dgCell0.RowSpan = 2; dgCell0.Text = "Überschrift3"; dgCell0.Width = Unit.Percentage(3); dgItem.Cells.Add(dgCell0); TableCell dgCell1 = new TableCell(); dgCell1.ColumnSpan = 2; dgCell1.Text = "Irgendwas"; dgCell1.Width = Unit.Percentage(24); dgItem.Cells.Add(dgCell1); }
Wie kann ich das Sortieren nun auch für "Überschrift 3" machen?
bzw. wie mache ich das <%# DataBinder.Eval(Container, "DataItem.DATACOLUMNNAME1")%>
für Überschrift 3 ?
Grüße
rayman
Comment