通过代码时,在gridview中无法编辑数据

时间:2016-04-06 15:35:05

标签: c# asp.net gridview dropdown

我有一个下拉列表,其中数据从表绑定,我有另一个GridV 其中将填充DropDown列表中存在的相同数据。 数据通过c#中的代码绑定,但无法编辑。

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        var userid = (Guid)Membership.GetUser().ProviderUserKey;
        ClientAdminMultiView.SetActiveView(MasterFundsView);
        List<T_W_Company> allowedCompanies = Source.aspnet_AdminUserClientMapping.Where(x => x.UserID == userid).Select(p => p.T_W_Company).ToList();
        CompanyDropDown.DataSource = allowedCompanies;
        CompanyDropDown.DataBind();
        GridView1.DataSource = allowedCompanies;
        GridView1.DataBind();
    }

    ClearErrors();
}

下面是我尝试将数据绑定到gridview的asp代码, 这是一个模板字段。

<asp:EntityDataSource ID="CompanyDataSource" runat="server" ConnectionString="name=ReportsEntities" ContextTypeName="Nirvana.Factory.ReportsDbModel.ReportsEntities" DefaultContainerName="ReportsEntities" EnableFlattening="False" EnableDelete="True" EnableInsert="True" EnableUpdate="True" EntitySetName="T_W_Company" OnDeleted="MasterFundsDataSource_Deleted" OnDeleting="MasterFundsDataSource_Deleting" OnInserted="MasterFundsDataSource_Inserted" OnInserting="MasterFundsDataSource_Inserting" OnUpdated="MasterFundsDataSource_Updated" OnUpdating="MasterFundsDataSource_Updating" AutoGenerateWhereClause="true"> <WhereParameters> <asp:ControlParameter Name="CompanyID" ControlID="CompanyDropDown" PropertyName="SelectedValue" DbType="Int64" /> </WhereParameters> </asp:EntityDataSource>

1 个答案:

答案 0 :(得分:1)

您没有发布标记。你在使用TemplateField / ItemTemplate吗?同样在您的代码中,您看起来只是调用存储过程和数据绑定 - 与编辑无关。

以下帖子有一个很好的可编辑GridView示例。

http://www.aspsnippets.com/Articles/Simple-Insert-Select-Edit-Update-and-Delete-in-ASPNet-GridView-control.aspx

修改

您刚才提到过您正在使用EntityDataSource,但其余的标记位于何处。没有看到一切都很难提供准确的指导。

话虽如此,

您需要将GridView设置为允许编辑。以下帖子有点陈旧,但会引导您完成它。

http://www.c-sharpcorner.com/uploadfile/raj1979/entitydatasource-control-in-Asp-Net-3-5/ http://www.devmanuals.com/tutorials/ms/aspdotnet/entitydatasource.html