如何使用asp.net检查网格视图的第一行和第一列
我有一个两列的gridview。我想检查第一行和第一列是否为必填项。如果第一列为空,则不允许保存,并应将消息显示为 一行应该是强制的 如何检查这个 我的保存按钮点击编码如下如何使用asp.net检查网格视图的第一行和第一列,asp.net,Asp.net,我有一个两列的gridview。我想检查第一行和第一列是否为必填项。如果第一列为空,则不允许保存,并应将消息显示为 一行应该是强制的 如何检查这个 我的保存按钮点击编码如下 Dim row As GridViewRow For Each row In GridView1.Rows If row.RowType = DataControlRowType.DataRow Then Dim t1 As String = CType(row.FindControl("TextBox2"),
Dim row As GridViewRow
For Each row In GridView1.Rows
If row.RowType = DataControlRowType.DataRow Then
Dim t1 As String = CType(row.FindControl("TextBox2"), TextBox).Text
Dim dd As String = CType(row.FindControl("DropDownList3"), DropDownList).SelectedItem.Text
If Trim(t1) = "" Or (Trim(dd)= "" then
label6.Text = "HospNo,Date,SurgeryCode/Method are Mandatory"
End If
但这会检查所有网格列,我只想检查第一行和第一列。您可以使用
GridView1.Rows(0)
获取第一行:
For Each row In GridView1.Rows
If row.RowType = DataControlRowType.DataRow Then
Dim t1 As String = CType(row.FindControl("TextBox2"), TextBox).Text
Dim dd As String = CType(row.FindControl("DropDownList3"),DropDownList).SelectedItem.Text
If Trim(t1) = "" Or (Trim(dd)= "" then
label6.Text = "HospNo,Date,SurgeryCode/Method are Mandatory"
End If
Exit For
End For
Dim firstRow = GridView1.Rows(0)
Dim TextBox2 = DirectCast(firstRow.FindControl("TextBox2"), TextBox)
Dim DropDownList3 = DirectCast(firstRow.FindControl("DropDownList3"), DropDownList)
If TextBox2.Text.Trim.Length = 0 OrElse DropDownList3.SelectedIndex = -1 Then
label6.Text = "HospNo,Date,SurgeryCode/Method are Mandatory"
End If
但这不是在ASP.NET中应该使用的方法。而是使用可以在客户端验证的
例如:
<asp:GridView ID="GridView1" OnSelectedIndexChanged="Grid1_SelectedIndexChanged" AutoGenerateSelectButton="true" AutoGenerateColumns="false" runat="server" Width="300">
<RowStyle CssClass="GridViewRowStyle" />
<AlternatingRowStyle CssClass="GridViewAlternatingRowStyle" />
<HeaderStyle CssClass="GridViewHeaderStyle" />
<SelectedRowStyle BackColor="Aqua" />
<Columns>
<asp:TemplateField HeaderText="Column 1" HeaderStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:TextBox runat="server" ID="TxtColumn1" Text='<%# Bind("Column1") %>'></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
EnableClientScript="true"
ControlToValidate="TxtColumn1"
Display="Static"
ErrorMessage="HospNo,Date,SurgeryCode/Method are Mandatory"
runat="server"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
您应该向我们显示您的GridView
和。我的保存按钮单击编码如下:将GridView中每一行的行作为GridViewRow进行编号1。如果row.RowType=DataControlRowType.DataRow,则将Dim t1作为String=CType(row.FindControl(“TextBox2”),TextBox)。将文本作为String=CType(row.FindControl(“DropDownList3”),DropDownList)进行编号.SelectedItem.Text如果Trim(t1)=“”或(Trim(dd)=“”,则label6.Text=“HospNo,Date,SurgeryCode/Method为必填项”结束,但这将检查所有网格列我只想检查第一行和列有一个编辑按钮(已为您完成)你能给出完整的想法吗?我没有得到立即响应的感谢我在表格中显示了2行我想检查第一行和第一列,然后保存请帮助我dis是vry arjenti尝试过的,但行Dim firstRow=GridView1.rows.Cast(GridViewRow的)。首先显示错误“cast”不是“System.Web.UI.WebControls.GridViewRowCollection”的成员。您使用哪个框架?它从.NET 3.5开始就存在。@user1702346:只需使用GridView1.Rows(0)
,相应地编辑我的答案。正在工作,谢谢MUCH@user1702346:我很高兴听到它对你有用。记住:)