aspx
<div class="row">
<div class="col-lg-12 mb-4">
<div class="card table-responsive">
<asp:GridView ID="gvAcademicQualification" runat="server" OnRowDataBound="gvAcademicQualification_RowDataBound" DataKeyNames="DegreeName" Width="100%" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3">
<Columns>
<asp:BoundField DataField="DegreeName" HeaderText="DegreeName" />
<asp:TemplateField HeaderText="Stream / Discipline">
<ItemTemplate>
<asp:TextBox ID="txtStream" runat="server" Width="95%" ></asp:TextBox>
<asp:RequiredFieldValidator ID="rtxtStream" runat="server" ControlToValidate="txtStream"
ErrorMessage="*" Font-Bold="False" Font-Names="Verdana" Font-Size="8pt"
SetFocusOnError="True" ValidationGroup="v1" ForeColor="Red" ></asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Institute Name">
<ItemTemplate>
<asp:TextBox ID="txtInstituteName" runat="server" Width="95%" ></asp:TextBox>
<asp:RequiredFieldValidator ID="rtxtInstituteName" runat="server" ControlToValidate="txtInstituteName"
ErrorMessage="*" Font-Bold="False" Font-Names="Verdana" Font-Size="8pt"
SetFocusOnError="True" ValidationGroup="v1" ForeColor="Red" ></asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Percentage/ Grade">
<ItemTemplate>
<asp:TextBox ID="txtGrade" runat="server" Width="95%" ></asp:TextBox>
<asp:RequiredFieldValidator ID="rtxtGrade" runat="server" ControlToValidate="txtGrade"
ErrorMessage="*" Font-Bold="False" Font-Names="Verdana" Font-Size="8pt"
SetFocusOnError="True" ValidationGroup="v1" ForeColor="Red" ></asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Year of Passing">
<ItemTemplate>
<asp:TextBox ID="txtYearOfPassing" runat="server" Width="95%" onkeypress="return isNumberKey(event)"></asp:TextBox>
<asp:RequiredFieldValidator ID="rtxtYearOfPassing" runat="server" ControlToValidate="txtYearOfPassing"
ErrorMessage="*" Font-Bold="False" Font-Names="Verdana" Font-Size="8pt"
SetFocusOnError="True" ValidationGroup="v1" ForeColor="Red" ></asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<HeaderStyle BackColor="#6777ef" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
<RowStyle ForeColor="#000066" />
<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#007DBB" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#00547E" />
</asp:GridView>
</div>
</div>
</div>
code behind file in aspx.cs in submit button event.
for (int i = 0; i < gvAcademicQualification.Rows.Count; i++)
{
// Only perform validation for the first, second, and third rows not on 4th row
if (i == 3)
{
GridViewRow row = gvAcademicQualification.Rows[i];
// Find the TextBox controls within the row
TextBox txtStream = (TextBox)row.FindControl("txtStream");
TextBox txtInstituteName = (TextBox)row.FindControl("txtInstituteName");
TextBox txtGrade = (TextBox)row.FindControl("txtGrade");
TextBox txtYearOfPassing = (TextBox)row.FindControl("txtYearOfPassing");
// Perform validation for the desired fields
if (string.IsNullOrEmpty(txtStream.Text))
{
// Handle the validation error for Stream field
// You can display an error message or highlight the invalid row
RequiredFieldValidator rtxtStream = FindControl("rtxtStream") as RequiredFieldValidator;
if (rtxtStream != null)
rtxtStream.Visible = false;
}
if (string.IsNullOrEmpty(txtInstituteName.Text))
{
// Handle the validation error for Institute Name field
// You can display an error message or highlight the invalid row
RequiredFieldValidator rtxtStream = FindControl("rtxtStream") as RequiredFieldValidator;
if (rtxtStream != null)
rtxtStream.Visible = false;
}
if (string.IsNullOrEmpty(txtGrade.Text))
{
// Handle the validation error for Grade field
// You can display an error message or highlight the invalid row
RequiredFieldValidator rtxtStream = FindControl("rtxtStream") as RequiredFieldValidator;
if (rtxtStream != null)
rtxtStream.Visible = false;
}
if (string.IsNullOrEmpty(txtYearOfPassing.Text))
{
// Handle the validation error for Year of Passing field
// You can display an error message or highlight the invalid row
RequiredFieldValidator rtxtStream = FindControl("rtxtStream") as RequiredFieldValidator;
if (rtxtStream != null)
rtxtStream.Visible = false;
}
}
}