【问题标题】:RadioButtonList and TextBox not updating in FormViewRadioButtonList 和 TextBox 未在 FormView 中更新
【发布时间】:2014-10-13 20:49:38
【问题描述】:

我有一个使用 SQL Server 2008 绑定到 SQLDataSource 的 ASP.Net 4.0 FormView。默认情况下它以编辑模式打开,并且绑定和更新工作正常,直到今天我又添加了一个 RadioButtonList 和 TextBox 到它。现在新的 RadioButtonList 和 TextBox 可以正确显示数据,但是当我更新时,它们的数据不会添加到数据库中。其他一切仍然像以前一样工作。我确定我在做一些愚蠢的事情,但我正处于时间紧缩状态,看不到它。我很想发布我的 HTML,但即使在代码块中,每次我尝试提交这个问题时,我都会收到一条错误消息(“发生错误)。所以,我可以告诉你:有不止一个页面上的 RadioButtonList 和多个 TextBox。今天之前页面上的 RadioButtonLists 和 TextBoxes 工作正常。它们显示数据库中的数据,并将数据保存到数据库中。新的 RadioButtonList 不同之处在于它具有 OnSelectedIndexChanged事件,这会导致新的 TextBox 值发生变化。新的 TextBox 使用格式将日期显示为 MM/dd/yyyy,这与其他仅显示数据库中的数据的 TextBox 不同。除此之外,我看不到任何差异。

这是后面的代码(rblComplete 和 tbDateCompleted 是新控件;fvEmpInfo 是 FormView):

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;</code>

namespace EAS.telecom
{
    public partial class NewRolloutDetails : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void UpdateFormView(object sender, FormViewUpdatedEventArgs e)
        {
            fvEmpInfo.DataBind();
            lbResult.Visible = true;
        }

        protected void setDateCompleted(object sender, EventArgs e)
        {
            foreach (Control control in fvEmpInfo.Controls)
            {
                RadioButtonList rblCompleted = (RadioButtonList)control.FindControl("rblComplete");
                TextBox tbDateCompleted = (TextBox)control.FindControl("tbDateCompleted");
                if (rblCompleted.SelectedValue == "True")
                    tbDateCompleted.Text = DateTime.Today.ToShortDateString();
                else
                    tbDateCompleted.Text = "";
            }
        }
    }
}

【问题讨论】:

  • 您是否使用调试器单步执行代码..?还有你如何处理IsPostBack() or !IsPostBack`fvEmpInfo 最初填充在哪里......?
  • 我上面发布的是所有的服务器端代码。在页面加载期间我什么也没做; FormView 处理客户端的所有绑定。

标签: c# asp.net data-binding formview


【解决方案1】:

伙计,我脸红了。我知道这很愚蠢。我没有将这两个新字段添加到 SQLDataSource 的 UPDATE 命令中。请不要介意....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-13
    • 1970-01-01
    • 1970-01-01
    • 2010-10-17
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 2013-07-19
    相关资源
    最近更新 更多