首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在网格视图中执行删除和编辑操作,该网格视图是从代码后台动态添加的,并且位于折叠控件内

如何在网格视图中执行删除和编辑操作,该网格视图是从代码后台动态添加的,并且位于折叠控件内
EN

Stack Overflow用户
提问于 2011-08-17 13:48:21
回答 1查看 1.1K关注 0票数 0

我正忙着,我需要一些帮助。我有一个accordion控件,里面有一个gridview控件。并且我能够将数据库中的值绑定到每个网格视图。接下来我要做的是执行编辑和删除操作。我尝试了很多变通方法,但都是徒劳的。我在此附上aspx和代码,供您参考。任何帮助都将不胜感激。

Aspx页面

代码语言:javascript
复制
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CategoriesTransaction.ascx.cs"
    Inherits="Tools.UserControls.CategoriesTransaction" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<ajaxToolkit:Accordion ID="accCategoryDetails" runat="server" Width="100%" SuppressHeaderPostbacks="true"
    OnItemDataBound="accCategoryDetails_ItemDataBound" HeaderCssClass="headerAccordion"
    SelectedIndex="0" ContentCssClass="contentAccordion" OnInit="accCategoryDetails_Init">
    <Panes>
        <ajaxToolkit:AccordionPane ID="AccordionPane" runat="server">
            <Header>
            </Header>
            <Content>
            </Content>
        </ajaxToolkit:AccordionPane>
    </Panes>
</ajaxToolkit:Accordion>

代码隐藏

代码语言:javascript
复制
    private void bindGrid()
            {
                DataTable category = new DataTable();
                category = MySqlDAL.getCategoriesReconciled();

                if (category.Rows.Count != 0)
                {
                    AjaxControlToolkit.Accordion accordion = FindControl("accCategoryDetails") as AjaxControlToolkit.Accordion;
                    AjaxControlToolkit.AccordionPane pane = FindControl("AccordionPane") as AjaxControlToolkit.AccordionPane;
                    int i = 0;


                    foreach (DataRow dr in category.Rows)
                    {
                        string categoryName = dr["category"].ToString();
                        if (accordion == null)
                        { return; }


                        {
                            GridView grid = new GridView();

                            if (grid == null)
                            {
                                return;
                            }
                            else
                            {
                                DataTable transactions = new DataTable();
                                transactions = MySqlDAL.getTransactionBasedCategories(categoryName);

                                grid.DataSource = transactions;
                                grid.AutoGenerateColumns = false;
//Formatting Grid
                                FormatColumns(transactions, grid);
                                grid.AutoGenerateDeleteButton = true;

                                grid.CssClass = "Grid";
                                grid.DataBind();

                            }

                            pane = new AjaxControlToolkit.AccordionPane();
                            pane.ID = "AccordionPane" + i;
                            pane.HeaderContainer.Controls.Add(categorylbl);
                            pane.HeaderContainer.Controls.Add(budgetAmountlbl);
                            pane.HeaderContainer.Controls.Add(overUnderlbl);
                            pane.HeaderContainer.Controls.Add(tranontAvglbl);
                            pane.ContentContainer.Controls.Add(grid);
                            accCategoryDetails.Panes.Add(pane);
                            ++i;

                        }
                    }
                }
            }

我需要做的就是在accordion中编辑和删除每个网格视图。提前感谢

EN

回答 1

Stack Overflow用户

发布于 2011-09-01 00:30:28

我不确定这一点,但看起来您使用的是数据表,而不是网格视图。尝试添加Gridview并将数据表绑定到它。

或者只是添加一个Gridview。

要编辑数据表,请尝试执行以下操作...假设您的datatable是这样的

DataTable dt =新的DataTable();dt.Rows = "myrow";

这里是行索引,“ColumnName”是列名,之后你可以给数据表指定任何你想要的数据。

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7088454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档