我正忙着,我需要一些帮助。我有一个accordion控件,里面有一个gridview控件。并且我能够将数据库中的值绑定到每个网格视图。接下来我要做的是执行编辑和删除操作。我尝试了很多变通方法,但都是徒劳的。我在此附上aspx和代码,供您参考。任何帮助都将不胜感激。
Aspx页面
<%@ 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>代码隐藏
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中编辑和删除每个网格视图。提前感谢
发布于 2011-09-01 00:30:28
我不确定这一点,但看起来您使用的是数据表,而不是网格视图。尝试添加Gridview并将数据表绑定到它。
或者只是添加一个Gridview。
要编辑数据表,请尝试执行以下操作...假设您的datatable是这样的
DataTable dt =新的DataTable();dt.Rows = "myrow";
这里是行索引,“ColumnName”是列名,之后你可以给数据表指定任何你想要的数据。
希望这能有所帮助
https://stackoverflow.com/questions/7088454
复制相似问题