
大概了解了一下
1、你在GridView的SelectionChanged事件中获取当前行的信息
ContractID = dGV_ContractCurrentRowCells["你要获取的信息列名"]ValueToString();
然后你可以在复选框的CheckedChanged事件里写
dGV_DegreeStatsColumns["你要隐藏的列名"]Visible = false; //false是隐藏,true显示
你的这个Id是指主键吗?
如果是主键,你可以到GridView里面去设定成如:
DataKeyNames="id"
<asp:GridView ID="gdvUserInfo" runat="server" AutoGenerateColumns="False" DataKeyNames="id">
获取的时候:
/// <summary>
/// 删除信息事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gdvUserInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string id =gdvUserInfoDataKeys[eRowIndex]ValueToString();
if (infoDeleteUserInfoById(id) > 0)
{
thislblMessageText = "删除成功!";
LoadInfo();
}
else
{
thislblMessageText = "删除失败!";
LoadInfo();
}
}
/// <summary>
/// 编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gdvUserInfo_RowEditing(object sender, GridViewEditEventArgs e)
{
gdvUserInfoEditIndex = eNewEditIndex;
LoadInfo();
}
/// <summary>
/// 取消编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gdvUserInfo_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
gdvUserInfoEditIndex = -1;
LoadInfo();
}
/// <summary>
/// 更新事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gdvUserInfo_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string userId = gdvUserInfoDataKeys[eRowIndex]ValueToString();
TextBox txtUserId = (TextBox)gdvUserInfoRows[eRowIndex]Cells[0]FindControl("txtUserId");
TextBox txtUserName = (TextBox)gdvUserInfoRows[eRowIndex]Cells[0]FindControl("txtUserName");
TextBox txtPassWord = (TextBox)gdvUserInfoRows[eRowIndex]Cells[0]FindControl("txtPassWord");
if (txtUserName != null && txtPassWord != null)
{
try
{
UserInfo user = infoGetUserInfoById(userId);
userUserName = txtUserNameTextToString();
userPassword = txtPassWordTextToString();
if (infoModifyUserInfo(user) > 0)
{
thislblMessageText = "修改成功!";
gdvUserInfoEditIndex = -1;
LoadInfo();
}
else
{
thislblMessageText = "修改失败!";
gdvUserInfoEditIndex = -1;
LoadInfo();
}
}
catch (Exception)
{
thislblMessageText = "修改失败!";
gdvUserInfoEditIndex = -1;
LoadInfo();
}
}
}
/// <summary>
///
/// 光棒事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void gdvUserInfo_RowDataBound(object sender, GridViewRowEventArgs e)
{
for (int i = 0; i < gdvUserInfoRowsCount; i++)
{
if (gdvUserInfoRows[i]RowType == DataControlRowTypeDataRow)
{
gdvUserInfoRows[i]AttributesAdd("onmouseover", "c=thisstylebackgroundColor;thisstylebackgroundColor='#9cf'");
gdvUserInfoRows[i]AttributesAdd("onmouseout", "thisstylebackgroundColor=c");
}
}
}
GridView1Rows[0]Cells[0]Text
用这个获取0行0列单元格内的值。然后根据你自己的业务逻辑,用循环去拿不同行不同列中的值,只要改变那两个0就可以了。
首先在后台
GridView1DataKeyNames = new string[] { "id" };
或者前台
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" DataKeyNames = "id"
设置DataKeyNames 的属性值进行绑定
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
string id = thisGridView1DataKeys[eNewSelectedIndex]ValueToString();
}
然后通过后台进行获取
为GridView的DataKeyNames属性设置库表字段名的主要目的是为了在为GridView控件绑定数据时获取当前行指定字段的值,以便作相应处理。若无此需求的话则GridView的DataKeyNames属性就可以不设置。
因为gridview根本没有cellclick事件之类的东西,所以想实现点击哪个单元格就d出列标题,行标题是比较麻烦。
解决方法,我想到两种:
1、在为gridview绑定数据时,就动态为每一个单元格生成一个JS的onclick事件,d出列标题和行标题。但是,代码很复杂,我也没写过。
2、这个方法比较简单,以前也有写过。
定义模板列,将每个数据显示在label上,在label的click事件里写代码,就可以获取到
以上就是关于当点击GridView中的某字段时怎么在另一个Gridview中获取当前字段的详细信息呢 下面有详细的说法全部的内容,包括:当点击GridView中的某字段时怎么在另一个Gridview中获取当前字段的详细信息呢 下面有详细的说法、你好,对于你的“如何获取Gridview中编辑字段的值”这个问题我有个类似的问题寻求下帮助、在gridview中如何获取其中字段值来赋值为一个变量,使之能判断。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)