在GridView1的模板列放一个Button1,
GridView1是自定义的字段不是自动生成字段,“删除,编辑,选择”这三个属性均为False
请问:
单击Button1如何得到该行的键值或该行某一列的值?
GridView1是自定义的字段不是自动生成字段,“删除,编辑,选择”这三个属性均为False
请问:
单击Button1如何得到该行的键值或该行某一列的值?
解决方案 »
- asp.net怎么实现缓存一张表的数据
- asp.net 与 IIS的关系
- 请教大侠,如何用js脚本获得TabContainer里的控件?
- VS2005里有没有比较简单的“写”XML文件的方法?
- 最近做拉和拍拍网一样的文本编辑器,如想要的和我说一下
- 使用过梅花雨日历控件的大侠请进,HELP……
- 多个客户端连接一台服务器
- 如何显示控件LOAD前后的等待信息??
- 浏览asp.net做的网站,用IE6.0和IE5.0版本有什么差别吗??求解
- 请教:我的javascript代码为什么在登陆页面后第二次调用才执行?
- 动态生成控件,每行生成规定的控件
- 在Gridview里 我新加一个字段 其他字段我已经绑定数据库了! 我想让这个未绑定的字段 随着我查询到数据的多少 依次显示 1,2,3,4,5,6~~~?
RepeaterItem item = btn.Parent as RepeaterItem;
Label lbStuffNum = item.FindControl("StuffNum") as Label;这个样子的大概就行了
然后在相关事件当中通过e.CommandArgument就可以得到key了
CommandName是便于你如果有多个操作的话 用它来判断到底是什么操作O(∩_∩)O~
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" onrowcommand="GridView1_RowCommand">
<Columns>
<asp:TemplateField HeaderText="操作">
<ItemTemplate>
<asp:Button ID="btnUpdate" runat="server" CommandArgument='<%# Bind("au_id") %>'
CommandName="Update" Text="修改" />
<asp:Button ID="btnDelete" runat="server" CommandArgument='<%# Bind("au_id") %>'
CommandName="Delete" Text="删除" EnableTheming="True" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string connstring = "server=.;user=sa;pwd=123;database=pubs";
string sql = "select top 4 * from authors where 1=1";
using (SqlConnection conn = new SqlConnection(connstring))
{
using (SqlCommand comm = new SqlCommand(sql, conn))
{
conn.Open();
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(comm);
sda.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
string id = e.CommandArgument.ToString();//就是你绑定在这按钮上的字段值
if (e.CommandName.Equals("Update"))//如果点击的是修改按钮
{
//执行你要修改的代码
}
else if (e.CommandName.Equals("Delete"))//如果点击的是删除按钮
{
//执行你要删除的代码
}
}
}
我不需要自动生成的:删除,编辑,选择按钮
运行时出现错误:
GridView“GridView1”激发了未处理的事件“RowDeleting”。
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{ //还未添加代码 }
就:GridView“GridView1”激发了未处理的事件“RowDeleting”。
protected void Button1_Click(object sender, EventArgs e)
{
GridViewRow gvr = (sender as Button).NamingContainer as GridViewRow;
if(gvr != null)
{
Response.Write(gvr.Cells[1].Text);//输入第二列的值
}
}