Hi data1025,
Change the ItemDataBound event code with the below.
Protected Sub CPRRepeater_ItemDataBound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs)
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
Dim row As DataRowView = TryCast(e.Item.DataItem, DataRowView)
Dim type As String = row.Row(2).ToString()
Dim btn1 As LinkButton = TryCast(e.Item.FindControl("btnDelete"), LinkButton)
If type.Trim().ToUpper() = "Y" Then
btn1.Visible = True
Else
btn1.Visible = False
End If
End If
End Sub
Check this example. Now please take its reference and correct your code.
HTML
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" />
<asp:Repeater ID="CPRRepeater" runat="server" OnItemDataBound="CPRRepeater_ItemDataBound">
<HeaderTemplate>
<table id="CPRRepeater" class="table table-condensed table-hover table-striped" data-toggle="bootgrid">
<thead>
<tr>
<th data-column-id="ClassID" data-type="numeric">
Class
</th>
<th data-column-id="EmployeeID" data-sortable="true">
Employee
</th>
<th data-column-id="CPRExperience" data-order="desc">
CPR Experience
</th>
<th data-column-id="DateSubmitted" data-formatter="link" data-sortable="false">
Date Registered
</th>
</tr>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "ClassID") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "EmployeeID") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "CPRExperience") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "DateSubmitted") %>
</td>
<td>
<asp:LinkButton ID="lnkEdit" Text="Edit" runat="server" Visible="false" class="btn btn-xs btn-primary btn-search"> <span aria-hidden="true" class="glyphicon glyphicon-pencil"></span></asp:LinkButton>
<asp:LinkButton ID="btnDelete" Text="Delete" runat="server" OnClientClick="return confirm('Do you want to delete this row?');"
class="btn btn-xs btn-danger btn-delete"> <span aria-hidden="true" class="glyphicon glyphicon-trash"></span></asp:LinkButton>
</td>
</tr>
<asp:HiddenField ID="HFRosterID" runat="server" Value='<%# DataBinder.Eval(Container.DataItem, "RosterID") %>' />
</ItemTemplate>
<FooterTemplate>
</tbody> </table>
</FooterTemplate>
</asp:Repeater>
<div class="panel-footer">
All classes are subject to change. You will be contacted prior to the class date
to confirm the class.</div>
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[] {
new DataColumn("ClassID"),
new DataColumn("EmployeeID"),
new DataColumn("CPRExperience"),
new DataColumn("DateSubmitted"),
new DataColumn("RosterID") });
dt.Rows.Add("C-1", "Emp-1", "Y", "2018/02/01", "R-1");
dt.Rows.Add("C-2", "Emp-2", "n", "2018/02/02", "R-2");
dt.Rows.Add("C-3", "Emp-3", "N", "2018/02/03", "R-3");
dt.Rows.Add("C-4", "Emp-4", "Y", "2018/02/04", "R-4");
CPRRepeater.DataSource = dt;
CPRRepeater.DataBind();
}
}
protected void CPRRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView row = e.Item.DataItem as DataRowView;
string type = row.Row[2].ToString();
LinkButton btn1 = e.Item.FindControl("btnDelete") as LinkButton;
if (type.Trim().ToUpper() == "Y")
{
btn1.Visible = true;
}
else
{
btn1.Visible = false;
}
}
}
VB.Net
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Me.IsPostBack Then
Dim dt As DataTable = New DataTable()
dt.Columns.AddRange(New DataColumn() {New DataColumn("ClassID"), New DataColumn("EmployeeID"), New DataColumn("CPRExperience"), New DataColumn("DateSubmitted"), New DataColumn("RosterID")})
dt.Rows.Add("C-1", "Emp-1", "Y", "2018/02/01", "R-1")
dt.Rows.Add("C-2", "Emp-2", "n", "2018/02/02", "R-2")
dt.Rows.Add("C-3", "Emp-3", "N", "2018/02/03", "R-3")
dt.Rows.Add("C-4", "Emp-4", "Y", "2018/02/04", "R-4")
CPRRepeater.DataSource = dt
CPRRepeater.DataBind()
End If
End Sub
Protected Sub CPRRepeater_ItemDataBound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs)
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
Dim row As DataRowView = TryCast(e.Item.DataItem, DataRowView)
Dim type As String = row.Row(2).ToString()
Dim btn1 As LinkButton = TryCast(e.Item.FindControl("btnDelete"), LinkButton)
If type.Trim().ToUpper() = "Y" Then
btn1.Visible = True
Else
btn1.Visible = False
End If
End If
End Sub
Screenshot