查了好多
还是没有解决源:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
CellPadding="3" GridLines="Horizontal"
onselectedindexchanged="GridView2_SelectedIndexChanged1" DataKeyNames="cys_yyzz,cys_zzjg,cys_swdjh,cys_khxkzh,cys_dlysxk,cys_frxm,cys_frsfz">后台:
protected void GridView2_SelectedIndexChanged1(object sender, EventArgs e)
{
string a = GridView2.SelectedRow.Cells[1].Text.ToString();
string b = GridView2.SelectedRow.Cells[2].Text.ToString();
string c = GridView2.SelectedRow.Cells[3].Text.ToString();
//string d = GridView2.SelectedRow.Cells[4].Text.ToString();
string d = GridView2.DataKeys[e.RowIndex]["cys_yyzz"].ToString();
//string e1 = GridView2.SelectedRow.Cells[5].Text.ToString();
string e1 = GridView2.DataKeys[e.RowIndex]["cys_zzjg"].ToString();
//string f = GridView2.SelectedRow.Cells[6].Text.ToString();
string f = GridView2.DataKeys[e.RowIndex]["cys_swdjh"].ToString();
//string g = GridView2.SelectedRow.Cells[7].Text.ToString();
string g = GridView2.DataKeys[e.RowIndex]["cys_khxkzh"].ToString();
//string h = GridView2.SelectedRow.Cells[8].Text.ToString();
string h = GridView2.DataKeys[e.RowIndex]["cys_dlysxk"].ToString();
//string i = GridView2.SelectedRow.Cells[9].Text.ToString();
string i = GridView2.DataKeys[e.RowIndex]["cys_frxm"].ToString();
//string j = GridView2.SelectedRow.Cells[10].Text.ToString();
string j = GridView2.DataKeys[e.RowIndex]["cys_frsfz"].ToString();
string k = GridView2.SelectedRow.Cells[11].Text.ToString();
string l = GridView2.SelectedRow.Cells[12].Text.ToString();
string m = GridView2.SelectedRow.Cells[13].Text.ToString();d,e1,f,g,h,i,j始终报不包含RowIndex的定义求达人指教Gridview取隐藏列值方法
还是没有解决源:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
CellPadding="3" GridLines="Horizontal"
onselectedindexchanged="GridView2_SelectedIndexChanged1" DataKeyNames="cys_yyzz,cys_zzjg,cys_swdjh,cys_khxkzh,cys_dlysxk,cys_frxm,cys_frsfz">后台:
protected void GridView2_SelectedIndexChanged1(object sender, EventArgs e)
{
string a = GridView2.SelectedRow.Cells[1].Text.ToString();
string b = GridView2.SelectedRow.Cells[2].Text.ToString();
string c = GridView2.SelectedRow.Cells[3].Text.ToString();
//string d = GridView2.SelectedRow.Cells[4].Text.ToString();
string d = GridView2.DataKeys[e.RowIndex]["cys_yyzz"].ToString();
//string e1 = GridView2.SelectedRow.Cells[5].Text.ToString();
string e1 = GridView2.DataKeys[e.RowIndex]["cys_zzjg"].ToString();
//string f = GridView2.SelectedRow.Cells[6].Text.ToString();
string f = GridView2.DataKeys[e.RowIndex]["cys_swdjh"].ToString();
//string g = GridView2.SelectedRow.Cells[7].Text.ToString();
string g = GridView2.DataKeys[e.RowIndex]["cys_khxkzh"].ToString();
//string h = GridView2.SelectedRow.Cells[8].Text.ToString();
string h = GridView2.DataKeys[e.RowIndex]["cys_dlysxk"].ToString();
//string i = GridView2.SelectedRow.Cells[9].Text.ToString();
string i = GridView2.DataKeys[e.RowIndex]["cys_frxm"].ToString();
//string j = GridView2.SelectedRow.Cells[10].Text.ToString();
string j = GridView2.DataKeys[e.RowIndex]["cys_frsfz"].ToString();
string k = GridView2.SelectedRow.Cells[11].Text.ToString();
string l = GridView2.SelectedRow.Cells[12].Text.ToString();
string m = GridView2.SelectedRow.Cells[13].Text.ToString();d,e1,f,g,h,i,j始终报不包含RowIndex的定义求达人指教Gridview取隐藏列值方法
解决方案 »
- sql语句中出现标准表达式中数据类型不匹配,求助高手
- C# button按钮控制画直线
- 验证控件上的验证码怎么读取
- 如何将图片保存到debug下
- 谁有DataGridView带统计功能的控件
- 用girdview做好了一个数据表的显示,现在还想能对该表进行添加,删除,更新,用什么做呢?,是写sql语句,还是什么datagird的update,dele
- 问一个简单的问题,关于WinForm
- 使用int.parse为什么也不能转换类型呢?帮帮忙(50分)
- 想请大侠们帮完善下TREEVIEW+SQL数据库的代码设计,高分求各位帮忙啊~
- 如何用PUSH模式把DATASET中的数据给水晶报表中的子报表,最好有例子,急!!谢谢!!!!!!!!
- 我遇到一条英文的编程题,但是小弟英文不怎么好,求大哥们帮翻译一下,小弟不胜感激。利用网上的翻译工具...不知所云...
- C#求函数 16进制字符串转byte 不带进位求和
string e1 = GridView2.DataKeys[index]["cys_zzjg"].ToString();
<dxwgv:ASPxGridView ID="agvTestItemBill" runat="server" Width="100%" KeyFieldName="TESTSTANDARDID"
ClientInstanceName="grid" AutoGenerateColumns="False"
DataSourceID="ObjectDataSource1"
oncustomcallback="agvTestItemBill_CustomCallback">
<SettingsPager PageSize="10"></SettingsPager>
<Columns>
<dxwgv:GridViewDataTextColumn FieldName="TESTSTANDARDID" Visible="false" VisibleIndex="0">
</dxwgv:GridViewDataTextColumn>
</Columns>
<ClientSideEvents CustomButtonClick="function(s,e){GridCustomButtonClick(s,e); }" />
</dxwgv:ASPxGridView>
<dxwgv:GridViewDataTextColumn FieldName="STANDARDSOURCEURL" Visible="false" VisibleIndex="1">
</dxwgv:GridViewDataTextColumn>这个第三方控件。
去这两个隐藏列的值在前台JS里面就行,这是两个参数的,一个参数的就是那个res就是你想要的那个值。function GridCustomButtonClick(s,e)
{
gridvisibleIndex = e.visibleIndex;
grid.GetRowValues(gridvisibleIndex ,'TESTSTANDARDID;STANDARDOBJECTTYPE',GridViewValuesCallbackDetail);
}function GridViewValuesCallbackDetail(res){
var id = res[0];
var S_type = res[1];
}
或者不要用visible属性隐藏列:
<style type="text/css">
.hidden { display:none;}
</style>
<asp:BoundColumn DataField="OtherAppAmt">
<FooterStyle CssClass="hidden"/>
<HeaderStyle CssClass="hidden"/>
<ItemStyle CssClass="hidden" />
</asp:BoundColumn>
rowindex是在更新或者编辑里才用到的-----------------------(object sender, GridViewUpdateEventArgs e)
{
才会取到编辑行e.rowindex
}int index = Gridview1.SelectedIndex;//取得编辑行string e1 = GridView2.DataKeys[index]["cys_zzjg"].ToString();
string b = GridView2.SelectedRow.Cells[2].Text.ToString();
string c = GridView2.SelectedRow.Cells[3].Text.ToString();
string d = GridView2.DataKeys[index]["cys_yyzz"].ToString();
string e1 = GridView2.DataKeys[index]["cys_zzjg"].ToString();
string f = GridView2.DataKeys[index]["cys_swdjh"].ToString();
string g = GridView2.DataKeys[index]["cys_khxkzh"].ToString();
string h = GridView2.DataKeys[index]["cys_dlysxk"].ToString();
string i = GridView2.DataKeys[index]["cys_frxm"].ToString();
string j = GridView2.DataKeys[index]["cys_frsfz"].ToString();
string k = GridView2.SelectedRow.Cells[11].Text.ToString();
string l = GridView2.DataKeys[index]["cys_xkz"].ToString();这行开始报:未将对象引用设置到对象的实例。的错误
string m = GridView2.DataKeys[index]["cys_khxxdz"].ToString();
string n = GridView2.DataKeys[index]["cys_zltxrz"].ToString();
string o = GridView2.DataKeys[index]["cys_cym"].ToString();
string p = GridView2.DataKeys[index]["cys_sf"].ToString();
string q = GridView2.DataKeys[index]["cys_ds"].ToString();
string r = GridView2.DataKeys[index]["cys_zgdw"].ToString();
string s = GridView2.DataKeys[index]["cys_yhzh"].ToString();
string t = GridView2.SelectedRow.Cells[20].Text.ToString();
string u = GridView2.DataKeys[index]["cys_lxrdh"].ToString();
string v = GridView2.DataKeys[index]["cys_fsjg"].ToString();
string w = GridView2.DataKeys[index]["cys_hylb"].ToString();
string x = GridView2.SelectedRow.Cells[24].Text.ToString();
string y = GridView2.DataKeys[index]["cys_jbrxm"].ToString();
string z = GridView2.DataKeys[index]["cys_jbrdh"].ToString();
string a1 = GridView2.DataKeys[index]["cys_jbrdzyx"].ToString();
string a2 = GridView2.SelectedRow.Cells[28].Text.ToString();
string a3 = GridView2.DataKeys[index]["cys_lxrxm"].ToString();
string a4 = GridView2.DataKeys[index]["cys_zyyw"].ToString();
string a5 = GridView2.SelectedRow.Cells[31].Text.ToString();
string a6 = GridView2.DataKeys[index]["cys_tqjl"].ToString();
string a7 = GridView2.DataKeys[index]["cys_ywwl"].ToString();
string a8 = GridView2.SelectedRow.Cells[34].Text.ToString();
string a9 = GridView2.DataKeys[index]["cys_czh"].ToString();
{
if (e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[1].Visible = false;
e.Row.Cells[2].Visible = false;
}
}
取值:
GridView.Rows [i].Cells [1].Text 或
<asp:HiddenField ID="Hd_SH" Value='<%#DataBinder.Eval(Container.DataItem,"BH")%>' runat="server" />
或
<asp:BoundField DataField="BH" HeaderText="">
<ControlStyle CssClass="hidden" />
<FooterStyle CssClass="hidden"/>
<HeaderStyle CssClass="hidden"/>
<ItemStyle CssClass="hidden"/>
</asp:BoundField>
.hidden
{
display:none;
}
{
if (e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[1].Visible = false;
e.Row.Cells[2].Visible = false;
}
}
取值:
GridView.Rows [i].Cells [1].Text 或
<asp:HiddenField ID="Hd_SH" Value='<%#DataBinder.Eval(Container.DataItem,"BH")%>' runat="server" />
或
<asp:BoundField DataField="BH" HeaderText="">
<ControlStyle CssClass="hidden" />
<FooterStyle CssClass="hidden"/>
<HeaderStyle CssClass="hidden"/>
<ItemStyle CssClass="hidden"/>
</asp:BoundField>
.hidden
{
display:none;
}
<style type="text/css">
.hidden { display:none;}
</style>
DataKeyNames="cys_yyzz,cys_zzjg,cys_swdjh,cys_khxkzh,cys_dlysxk,cys_frxm,cys_frsfz">
后台
string l = GridView2.DataKeys[index]["cys_xkz"].ToString();
DataKeys[index][string].ToString(), string是要与DataKeyNames里面的对应的,你没有的话,是去不出来的.
你已经绑定的字段,你就用 string a = GridView2.SelectedRow.Cells[1].Text.ToString();
你隐藏的列,才用string l = GridView2.DataKeys[index]["cys_xkz"].ToString();
不是每行都用DataKeyS[index]
没有隐藏的我用的是 string a = GridView2.SelectedRow.Cells[1].Text.ToString();
string b = GridView2.SelectedRow.Cells[2].Text.ToString();
string c = GridView2.SelectedRow.Cells[3].Text.ToString();隐藏的我用的是:
string d = GridView2.DataKeys[index]["cys_yyzz"].ToString();
string e1 = GridView2.DataKeys[index]["cys_zzjg"].ToString();
string f = GridView2.DataKeys[index]["cys_swdjh"].ToString();
string g = GridView2.DataKeys[index]["cys_khxkzh"].ToString();
string h = GridView2.DataKeys[index]["cys_dlysxk"].ToString();
string i = GridView2.DataKeys[index]["cys_frxm"].ToString();
string j = GridView2.DataKeys[index]["cys_frsfz"].ToString();