【问题标题】:Findcontrol Listview Edit - NullreferenceExceptionFindcontrol Listview 编辑 - NullreferenceException
【发布时间】:2011-05-27 13:06:02
【问题描述】:

我有一个很奇怪的问题。但是,我有一个可编辑的 ListView - 当我单击编辑时,一旦我尝试获取文本框,我通常会得到 NullreferenceException。但是错误并不一致,有时存在,有时不存在。我很困惑。

这是代码片段:

public void test_ItemEditing(Object sender, ListViewEditEventArgs e)
{

    // Liest die SpeiseID mit der die Daten aus der Datenbank extrahiert werden können
    DataKey currentDataKey = speiseplanListView.DataKeys[e.NewEditIndex];

    TextBox editDatum  = (TextBox)speiseplanListView.EditItem.FindControl("txtDatum");


}

这是 asp.net 文件:

<EditItemTemplate>
    <tr>
        <td><asp:TextBox ID="txtDatum" runat="server"></asp:TextBox></td>
        <td><asp:TextBox ID="txtSpeise" runat="server"></asp:TextBox></td>

    </tr>
</EditItemTemplate>

【问题讨论】:

  • test_ItemEditing 绑定到哪个事件?

标签: c# asp.net


【解决方案1】:

将您的 test_ItemEditing 代码替换为以下代码

public void test_ItemEditing(Object sender, ListViewEditEventArgs e)
{
    lvEmployee.EditIndex = e.NewEditIndex;

    test.DataSource = GetData("Select * from Table");

    test.DataBind();
}

并处理test_ItemUpdating 事件以查找控件并更新数据。

【讨论】:

  • 该行加载了内容,我没有得到异常,但不幸的是,该行没有显示在文本框中-而是像往常一样显示在标签中(就像在“非编辑”事件中一样)。
  • 在edititem模板中绑定文本框值例如文本框>
猜你喜欢
  • 1970-01-01
  • 2011-11-12
  • 1970-01-01
  • 1970-01-01
  • 2010-10-18
  • 2016-02-17
  • 2012-09-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多