Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 无法将HiddenField强制转换为I.Convertible_Vb.net_Findcontrol_Hiddenfield - Fatal编程技术网

Vb.net 无法将HiddenField强制转换为I.Convertible

Vb.net 无法将HiddenField强制转换为I.Convertible,vb.net,findcontrol,hiddenfield,Vb.net,Findcontrol,Hiddenfield,我有两个数据列表,其中一个嵌套在另一个中。我有一行代码(Dim QID…)总是给我带来问题,不管我在网上能找到什么代码组合。我只想让隐藏字段显示为整数,这样我的If语句就可以工作了 Dim dl2 As DataList = CType(e.Item.FindControl("DataList2"), DataList) Dim QID As Integer = Convert.ToInt32(e.Item.FindControl("HiddenField2"))

我有两个数据列表,其中一个嵌套在另一个中。我有一行代码(Dim QID…)总是给我带来问题,不管我在网上能找到什么代码组合。我只想让隐藏字段显示为整数,这样我的If语句就可以工作了

Dim dl2 As DataList = CType(e.Item.FindControl("DataList2"), DataList)
        Dim QID As Integer = Convert.ToInt32(e.Item.FindControl("HiddenField2"))
        If QID = 33 Then
                Dim lbl As Label = dl2.FindControl("Label3")
                For Each i As ListItem In dl2.Items
                    If lbl.Text = "Self Directed" Or lbl.Text = "Systems" Then
                        lbl.Visible = False
                    End If
                Next
        End If

<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1" 
 Width="100%" CellPadding="4" ForeColor="#333333">
<ItemTemplate>
<asp:HiddenField ID="HiddenField2" runat="server" 
 Value='<%# Eval("QuestionID") %>'></asp:HiddenField>
<asp:Label ID="lblQuesNum" runat="server" Font-Bold="True" 
 Text='<%# Eval("QuestionNum") %>'></asp:Label>
<asp:Label ID="Label2" runat="server" Font-Bold="True" 
 Text='<%# Eval("Question") %>'></asp:Label>
<asp:HiddenField ID="hiddenPicklistID" runat="server"  
 Value='<%# Eval("PicklistID") %>' />
<asp:HiddenField ID="HiddenField1" runat="server" 
 Value='<%# Eval("AnswerType") %>' />

<asp:DataList ID="DataList2" runat="server" DataSourceID="dsPicklist">
<ItemTemplate>
    <asp:HiddenField ID="hidPickID" runat="server" value='<%# Eval("PICKLISTID") %>' />
    <asp:Label ID="Label3" runat="server" Text='<%# Eval("TEXT") %>'></asp:Label> 
    <asp:HiddenField ID="HiddenField1" runat="server" 
     Value='<%# Eval("AnswerType") %>' />
 </ItemTemplate>
 </asp:DataList>
 </asp:TextBox>
Dim dl2 As DataList=CType(例如Item.FindControl(“DataList2”),DataList)
Dim QID As Integer=Convert.ToInt32(例如,Item.FindControl(“HiddenField2”))
如果QID=33,则
Dim lbl As Label=dl2.FindControl(“Label3”)
对于dl2.Items中的每个i As列表项
如果lbl.Text=“自导向”或lbl.Text=“系统”,则
lbl.Visible=False
如果结束
下一个
如果结束

不能将控件强制转换为数值。实际上,您希望将
Hiddenfield
的值强制转换为整数

Dim hidden2 = DirectCast(e.Item.FindControl("HiddenField2"), HiddenField)
Dim QID As Integer = Int32.Parse(hidden2.Value)

不能将控件强制转换为数值。实际上,您希望将
Hiddenfield
的值强制转换为整数

Dim hidden2 = DirectCast(e.Item.FindControl("HiddenField2"), HiddenField)
Dim QID As Integer = Int32.Parse(hidden2.Value)

哦,好的,谢谢!它将转到下一个错误,因此我假设它正在工作。:)哦,好的,谢谢!它将转到下一个错误,因此我假设它正在工作。:)e(如第一行的
e.Item.FindControl
中)是System.EventArgs的实例吗?e(如第一行的
e.Item.FindControl
中)是System.EventArgs的实例吗?