GridView控件的EditItemTemplate不好用,怎么解决?帮我看看错在哪里了,谢谢!

问题描述

protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){DataTabledt=newDataTable();DataColumndc1=newDataColumn("f_name");dc1.Caption="姓名";dt.Columns.Add(dc1);DataColumndc2=newDataColumn("f_id");dc2.Caption="编码";dt.Columns.Add(dc2);DataRowdr1=dt.NewRow();dr1["f_name"]="Helloworld";dr1["f_id"]="001";dt.Rows.Add(dr1);GridView1.DataSource=dt;GridView1.DataBind();}}//====================================================================================<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"OnSelectedIndexChanged="GridView1_SelectedIndexChanged"Height="145px"Width="335px"><Columns><asp:TemplateFieldHeaderText="编码"><EditItemTemplate>&nbsp;</EditItemTemplate><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label><asp:LabelID="Label2"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="姓名"><EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:LabelID="Label3"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField></Columns></asp:GridView>

解决方案

解决方案二:

你EditItemTemplate里面是空的
解决方案三:

<EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate>这不是有内容吗,为何说是空的?请明示,小弟刚学asp.net,谢谢
解决方案四:

<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"OnSelectedIndexChanged="GridView1_SelectedIndexChanged"Height="145px"Width="335px"><Columns><asp:TemplateFieldHeaderText="编码"><EditItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></EditItemTemplate><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="姓名"><EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:LabelID="Label3"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField></Columns></asp:GridView>
解决方案五:

gridview加上DataKeyNames=""
解决方案六:

gridview加上DataKeyNames="主键"
解决方案七:

<tablecellspacing="0"rules="all"border="1"id="GridView1"style="height:145px;width:335px;border-collapse:collapse;"><tr><thscope="col">编码</th><thscope="col">姓名</th></tr><tr><td><spanid="GridView1_ctl02_Label1">001</span><spanid="GridView1_ctl02_Label2">Helloworld</span></td><td><spanid="GridView1_ctl02_Label3">Helloworld</span></td></tr></table>TextBox根本未显示,这是为何?
解决方案八:

<asp:TemplateFieldHeaderText="编码"><EditItemTemplate>&nbsp;???</EditItemTemplate><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label><asp:LabelID="Label2"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField>模板列里的文本框被你删除了?加上去,再设置要绑定的列名称。
解决方案九:

看名称里的EditItemTemplate,那个是有的
解决方案十:

<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"DataKeyNames=""OnSelectedIndexChanged="GridView1_SelectedIndexChanged"Height="145px"Width="335px"><Columns><asp:TemplateFieldHeaderText="编码"><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label><asp:LabelID="Label2"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="姓名"><EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:LabelID="Label3"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField></Columns></asp:GridView>
解决方案十一:

protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){DataTabledt=newDataTable();DataColumndc1=newDataColumn("f_name");dc1.Caption="姓名";dt.Columns.Add(dc1);DataColumndc2=newDataColumn("f_id");dc2.Caption="编码";dt.Columns.Add(dc2);DataRowdr1=dt.NewRow();dr1["f_name"]="Helloworld";dr1["f_id"]="001";dt.Rows.Add(dr1);GridView1.DataSource=dt;GridView1.DataBind();}}<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"Width="335px"><Columns><asp:TemplateFieldHeaderText="编码"><EditItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></EditItemTemplate><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="姓名"><EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:LabelID="Label3"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField></Columns></asp:GridView>我试过没问题
解决方案十二:

那我这咋不行,不会是我的VS出了问题吧?
解决方案十三:

工程上需要作什么特殊设置吗?
解决方案十四:

我这编辑框就是不出来,不知为何?
解决方案十五:

protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){gvDataBind();}}publicvoidgvDataBind(){DataTabledt=newDataTable();DataColumndc1=newDataColumn("f_name");dc1.Caption="姓名";dt.Columns.Add(dc1);DataColumndc2=newDataColumn("f_id");dc2.Caption="编码";dt.Columns.Add(dc2);DataRowdr1=dt.NewRow();dr1["f_name"]="Helloworld";dr1["f_id"]="001";dt.Rows.Add(dr1);GridView1.DataSource=dt;GridView1.DataBind();}protectedvoidGridView1_RowEditing(objectsender,GridViewEditEventArgse){GridView1.EditIndex=e.NewEditIndex;gvDataBind();}protectedvoidGridView1_RowCancelingEdit(objectsender,GridViewCancelEditEventArgse){GridView1.EditIndex=-1;gvDataBind();}<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"DataKeyNames="f_id"OnRowEditing="GridView1_RowEditing"OnRowCancelingEdit="GridView1_RowCancelingEdit"><Columns><asp:BoundFieldDataField="f_id"Visible="false"/><asp:BoundFieldDataField="f_name"Visible="false"/><asp:TemplateFieldHeaderText="编码"><EditItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></EditItemTemplate><ItemTemplate><asp:LabelID="Label1"runat="server"Text='<%#Bind("f_id")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="姓名"><EditItemTemplate><asp:TextBoxID="TextBox2"runat="server"Width="221px"Text='<%#Bind("f_name")%>'></asp:TextBox></EditItemTemplate><ItemTemplate><asp:LabelID="Label3"runat="server"Text='<%#Bind("f_name")%>'></asp:Label></ItemTemplate></asp:TemplateField><asp:CommandFieldShowEditButton="true"/></Columns></asp:GridView>
解决方案:我也不知为何,我也和你相似的用法就是不懂。。过来查找资料偶然看到。。
解决方案:我也遇到同样的问题。楼主搞定了吗?

时间: 2024-11-10 01:05:58

GridView控件的EditItemTemplate不好用,怎么解决?帮我看看错在哪里了,谢谢!的相关文章

关于GridView控件的使用方法

问题描述 GridView控件的使用方法 解决方案 解决方案二:列的分类a:BoundField:适合绑定数据表的源列b:TempleteField:模板列:具体组成(1):HeadTemplete头模板(2):FooterTemplete尾模板(3):ItemTemplete项模板绑定表达式(1):分类:前期绑定(静态绑定)和后期绑定(动态绑定)<%#Eval("字段名或者属性名")%>只读绑定方法<%#Bind("同上"%>可读写的绑定方

ASP.NET 2.0 GridView控件应用模版

asp.net|控件 GridView控件是由一系列数据显示控件之一,它可以绑定到 SqlDataSource 控件以返回的数据记录的字段以动态生成网格, GridView为我们提供了多种数据绑定列类型,例如BoundField 默认数据绑定列类型是一种简单的数据类型,展现了文本数据值. 其他类型方面的数据显示文本内容交替使用.CheckBoxField 复选框显示布尔数据类型.CommandField 显示一个按扭,按扭的类型可以是Button 普通按扭.LinkButton超链接按扭.Ima

在ASP.NET 2.0中操作数据:在GridView控件中使用TemplateField

asp.net|控件|数据 导言     让我们花点时间在浏览器中来看看我们的成果.这时,你将看到一个表格, 表格中每一个记录都是一个雇员的信息,一共有四列:一个是雇员的姓, 一个是名字,一个是头衔,还有一个是他们的受雇日期.     就像你看到的那样,TemplateField由两个模板组成--一个ItemTemplate,它有一个Label控件,其Text属性被设置为FirstName数据字段的值:还有一个EditItemTemplate,它有一个TextBix控件,其Text属性也被设置为

ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField

返回"ASP.NET 2.0数据教程目录" 导言 GridView是由一组字段(Field)组成的,它们都指定的了来自 DataSource中的什么属性需要用到自己的输出呈现中.最简单的字段类型是 BoundField,它仅将数据简单的显示为文本.其他的字段类型使用交互HTML元素 (alternate HTML elements)来显示数据.比如说,CheckBoxField将被呈现为 一个CheckBox,其选中状态由某特定数据字段的值来决定:ImageField则将某特 定数据字

大虾帮忙,gridview控件点击更新没反应

问题描述 publicpartialclass_Default:System.Web.UI.Page{stringConnStr="DataSource=PC-201002260947;InitialCatalog=class;IntegratedSecurity=True";inta;protectedvoidPage_Load(objectsender,EventArgse){bind();}protectedvoidGridView1_RowDeleting(objectsend

在编辑模式下GridView控件中的子控件(dropDownList)的绑定问题?

问题描述 <asp:TemplateFieldHeaderText="机型名"><ItemTemplate><%#DataBinder.Eval(Container.DataItem,"机型名")%></ItemTemplate><EditItemTemplate><asp:DropDownListID="innerMachine"DataTextField="Machi

小弟请教个自定义gridView控件遇到的问题?

问题描述 我现在打算自己写个GridView控件,但是排序的问题让我有点不好实现,我在调用的时候怎么将当前的排序字段传给控件呢也就是说排序功能怎么可以实现自定义,使得这个控件更通用?各位有什么好的建议...我用的是vs2005 解决方案 解决方案二:在表头加上单击事件然后在后台:usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Collections;usingSystem.Web;usingSystem.Web

C#与SQL连接:GridView控件对数据库的操作_C#教程

GridView和DataGrid的异同 GridView 是 DataGrid的后继控件,在.net framework 2 中,虽然还存在DataGrid,但是GridView已经走上了历史的前台,取代DataGrid的趋势已是势不可挡.GridView和DataGrid功能相似,都是在web页面中显示数据源中的数据,将数据源中的一行数据,也就是一条记录,显示为在web页面上输出表格中的一行. GridView相对于DataGrid来说,具有如下优势,功能上更加丰富,因为提供了智能标记面板(

灵活掌握asp.net中gridview控件的多种使用方法(上)_实用技巧

灵活使用asp.net中gridview控件的方法有很多种,本文内容很富,希望大家都能有所收获. 1.GridView无代码分页排序: 效果图: 小提示: 1.AllowSorting设为True,aspx代码中是AllowSorting="True": 2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12". 3.默认的是单向排序的,右击GridView弹出"属性",选择AllowSort