1

内にtextboxコントロールとコントロールがあります。コードビハインドから必要なときにこれらのコントロールを非表示にしたいのですが、このようなものを使用してみましたbuttonlistview

ListViewName.FindControl("TextBoxComment").Visible = false; 

((TextBox)ListViewName.FindControl("TextBoxComment")).Visible = false

しかし、コードを実行すると、NullReference Exception
助けてください。

 <ItemTemplate>
          <table>

               <tr>
                   <td>
                       <asp:TextBox ID="TextBoxComment" runat="server" >
                       </asp:TextBox>
                   </td>

                   <td>
                       <asp:Button ID="ButtonSubmit" runat="server"  
                            CommandName="Comment" 
                            CommandArgument='<%# Eval("FlowPostID") %>'/>
                   </td>
                </tr>
          </table>
    </ItemTemplate>
4

3 に答える 3

1

ListView の ItemDataBound イベント ハンドルでこれを行う必要があります。

var item = (ListViewItem)e.DataItem;

var txtBox = (txtBox)item.FindControl("TextBoxComment");

if(txtBox != null)
{
  txtBox.Visible = false;
}

などなど…

于 2013-11-06T10:54:15.640 に答える
0

null 値を確認する必要があります

var textbox=ListViewName.FindControl("TextBoxComment");
if(textbox!=null)
    ListViewName.FindControl("TextBoxComment").Visible = false; 
于 2013-11-06T10:53:10.693 に答える