ASP.NET在gridview中动态添加行,行中有下拉列表,并保证原有数据不变

ASP.NET在gridview中动态添加行,行中有下拉列表,并保证原有数据不变,第1张

首先你要明确的是gridview的显示数据全部是从数据源里查出来的

不管是DataSource还是一个List还是DataTable

所以你想改变前边的显示数据就必须要改变数据源(用js实现除外)

假设你的数据源是List(对象名:list)

1.添加一行:

从页面中获得新值的数据(放几个文本框手动输入)

点一个按钮时

实例化一个对像(你数据的封装对象)

比如叫UserInfo

UserInfo

newUser

=

new

UserInfo()

newUser.Name

=

"获得文本框的值"

newUser.Address

=

"获得文本框的值"

list.Add(newUser)

BindMethod()//绑定数据的方法

2.删除数据:

比如你想删除第二行

当点击按钮时要把2传给方法或都保证能从后台获取到

list.RemoveAt(2)//2是获取到的

BindMethod()

不知道是不是这个意思

1、后台代码

public string GetString() //自定义方法,供前台调用

{

StringBuilder strBuilder = new StringBuilder() //用StringBuilder接受所有拼接的字符串,因为StringBuilder效率比拼接字符串效率高,当然以下代码还需要你自己去完善,需要完整代码的话,继续追问

strBuilder.AppendLine("<table>")

//接下来取出数据

foreach(dataRow row in datas) //遍历取出数据放到tr中

{

strBuilder.AppendLine("<tr><td>i</td><td>d["date"]</td><td>d["goodsCompany"]</td>.....</tr>.")

i++

}

strBuilder.AppendLine("</table>")

return strBuilder.ToString()//得到strBuilder返给GetString()这个自定义方法

}

2、前台调用

找一块区域,调用GetString()

<%=GetString()%>//这样就得到了,哈哈,完毕,下面介绍其他的两种方法

3、如果需要异步调用的话,就需要ajax配合json技术了

4、想偷懒也不注重效率的话,就用数据绑定控件吧,比如Reapter

ps:有不懂的继续追问


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11537003.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存