zoukankan      html  css  js  c++  java
  • 让gridview默认处于编辑模式并取得编辑后的值

          这几天一直在忙一个煤矿上的项目,由于客户要求所有的页面默认要处于编辑模式,刚开始感觉没有什么难的,用Textbox控件自定义gridview就OK了,可是后来的一个页面用这种方法就没法解决了。冥思苦想~~~
          终于让我发现了一个更好的让gridview自动处于编辑模式的方法。
          gridview控件有两个方法:OnRowDataBound和OnRowCreated,在OnRowDataBound中取出cell中的值存入TextBox,然后把Textbox加入Cell的Controls集合中,记住添加的时候一定要用Controls.AddAt方法指定索引,要不然没有办法取回编辑后的值!最后让OnRowCreated方法也触发OnRowDataBound事件。这样就可以利用Cell的Controls[索引]取回编辑后的值了。
    附代码:
    if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    GridViewRow row = e.Row;
                    for (int index = 0; index < row.Cells.Count; ++index)
                    {
                        TextBox tb = new TextBox();
                        tb.Text = row.Cells[index].Text;
                        tb.CssClass = "text";
                        tb.Width = 100;
                        tb.ID = index.ToString();
                        row.Cells[index].Controls.Clear();
                        row.Cells[index].Controls.AddAt(0, tb);
                    }
                }

    注:TextBox控件必须加上ID,否则无法查找!
  • 相关阅读:
    [声明]博主退役了
    galgame(s?)
    atcoder grand contest 040 F Two Pieces
    AtCoder Grand Contest 040 E
    【AtCoder】CODE FESTIVAL 2016 qual C E-順列辞書 / Encyclopedia of Permutations
    GMOJ6282 向量
    [GMOJ6281] 串
    GMOJ 5909 跑商
    2019.10.28 GMOJ 6394 燃烧的火焰
    题解 CF1092B 【Teams Forming】
  • 原文地址:https://www.cnblogs.com/sunzhenxing19860608/p/hailong.html
Copyright © 2011-2022 走看看