获取内容itemTemplate


<asp:GridView ID="gridInboxMessage" runat="server" 
            AutoGenerateColumns="False" 
            DataSourceID="LinqDataSource1">
    <Columns>
        <asp:BoundField DataField="Title" HeaderText="title" ReadOnly="True" SortExpression="Title" />
        <asp:TemplateField HeaderText="Body" SortExpression="Body">
            <ItemTemplate>
                <asp:Label ID="MyBody" runat="server"
                        Text='<%# TruncateText(Eval("Body"))%>'>
                </asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Sender">
            <ItemTemplate>
                <asp:Label ID="MySender" runat="server"
                        Text='<%# GetSenderNameFromID(Eval("Sender"))%>'>
                </asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="Date" SortExpression="Date1">
            <ItemTemplate>
                <asp:Label ID="MyDate" runat="server"
                        Text='<%# DataBinder.Eval(Container.DataItem, "Date1", "{0:MMMM d yyy}")%>'>
                </asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>
<div id="FullBody"></div>

背后的代码
protected string TruncateText(object objBody)
{
    string truncated = "";
    if (objBody != null)
    {
        truncated = objBody.ToString().Length > 50 ? 
            objBody.ToString().Substring(0, 47) + "..." : objBody.ToString();
    }
    return truncated;
}

1。我想在

protected void gridInboxMessage_SelectedIndexChanged(object sender, EventArgs e)
{
    GridViewRow row = gridInboxMessage.SelectedRow;
    //i want show full body in div `fullBody`
}

如何访问body以显示div fullBody

的完整body

2。我想要背景颜色为黑色的偶数行?

为了从后面的代码访问div,最简单的方法是将div的runat属性设置为true<div id="fullbody" runat="server"/>

在你的代码后面,你可以像访问其他控件一样访问它:fullbody.some_property = "";

对于行背景色,你可以使用:<alternatingrowstyle backcolor="Black" />

最新更新