2012-09-05 39 views
0

我有一个使用母版页和.net 4的aspx我在4种不同的表单上使用相同的代码。我从其他正在工作的表单复制并粘贴它。这是代码。checkbox.checked在列表视图中不工作

ListView控件被命名为lvMisc_Attachment,这里是复选框代码

<asp:CheckBox ID="chkChecked" runat="server" Checked='<%#eval("Checked") %>' /> 

,这里是背后的代码正在发生的事情,当有人点击一个LinkBut​​ton,LinkBut​​ton的呼吁德MiscAttachment_ItemsChecked功能。

Private Function MiscAttachment_ItemsChecked() As String 
    Dim mString As String = String.Empty 
    For Each lv In Me.lvMisc_Attachment.Items 
     If CType(lv.FindControl("chkChecked"), CheckBox).Checked = True Then 
      If mString.Length = 0 Then 
       mString = CType(lv.FindControl("hfMisc_AttachmentID"), HiddenField).Value 
      Else 
       mString = mString & "," & CType(lv.FindControl("hfMisc_AttachmentID"), HiddenField).Value 
      End If 
     End If 
    Next 
    Return mString 
End Function 

该复选框不显示为当它被检查时。它在页面呈现后得到检查。

回答

0

添加的AutoPostBack =“true”以你的复选框,以张贴控逆变焕他改变

<asp:CheckBox ID="chkChecked" runat="server" Checked='<%#eval("Checked") %>' AutoPostback="true"/> 
+0

谢谢..我不想做一个回发每次复选框被检查..可能是越来越多的检查,这就是为什么我使用链接按钮。无论如何,我发现我的问题..我没有做一个页面加载,如果page.ispostback,所以我的listview得到重新加载...感谢您的答复。 – jvcoach23

+0

我很高兴帮助你jvcoach23 –

0

我发现这个问题。我忘了在page_Load上做一个if page.ispost = true .. listview被重新填充,所以复选框没有被重新加载。