ASPX: создать вид сетки как это
<asp:GridView runat="server" AllowPaging="True" AutoGenerateColumns="False" ID="gvSticker"
Width="100%" EmptyDataText="No sticker found for this Fisher. Click on add to Add a new sticker."
HorizontalAlign="Left" ShowFooter="True" ShowHeaderWhenEmpty="True" BackColor="White"
BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px" CellPadding="3" PageSize="3"
OnRowDataBound="gvSticker_RowDataBound" OnPageIndexChanging="gvSticker_PageIndexChanging">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<table style="width: 100%">
<tr align="left">
<td style="width: 15%">
Sticker Year
</td>
<td style="width: 15%">
Sticker Number
</td>
<td style="width: 15%">
Issue Date
</td>
<td style="width: 35%">
Issue Type
</td>
<td style="width: 20%">
Status
</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table style="width: 100%">
<tr align="left">
<td style="width: 15%">
<%# Eval("YearOfIssue")%>
</td>
<td style="width: 15%">
<asp:HyperLink ID="hlStickerNumber" runat="server" Text='<%#Eval("StickerNumber")%>' Style="cursor: hand; text-decoration:underline"></asp:HyperLink>
</td>
<td style="width: 15%">
<%# Eval("DateOfIssue", "{0:MM/dd/yyyy}")%>
</td>
<td style="width: 35%">
<%# Eval("RegistrationType")%>
</td>
<td style="width: 20%">
<asp:Label ID="lblStickerStatus" runat="server" Text='<%# Eval("StickerStatus")%>'></asp:Label>
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle HorizontalAlign="Left" BackColor="#006699" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<RowStyle HorizontalAlign="Left" ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#007DBB" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#00547E" />
</asp:GridView>
В событии с привязкой к данным добавьте код.
protected void gvSticker_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
{
if (Session["FisherId"] != null)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label lblStatus = (Label)e.Row.FindControl("lblStickerStatus");
if (e.Row.RowIndex == 0)
{
if (lblStatus.Text.Contains("Active"))
{
btnAddSticker.Enabled = false;
HyperLink hlStickerNum = (HyperLink)e.Row.FindControl("hlStickerNumber");
if (!string.IsNullOrEmpty(hlStickerNum.Text.Trim()))
{
string urlWithParameters =
"Stickers.aspx? StickerId =" +
hlStickerNum.Text;
hlStickerNum.Attributes.Add ( "OnClick",
"popWinNote ('" + urlWithParameters +
"')");
}
}
else
{
btnAddSticker.Enabled = true;
btnVoidSticker.Enabled = true;
}
}
}
}
else
{
btnAddSticker.Enabled = true;
btnVoidSticker.Enabled = true;
}
}
А на странице aspx добавьте функцию в тег скрипта PopWinNote, чтобы открыть модальное диалоговое окно показа, если вам нужно небольшое окно. Этот код на самом деле не является вашим требуемым кодом, но может дать вам представление о реализации логики