日期:2014-05-18  浏览次数:20440 次

如何改变gridview某列的值,
gridview中有列的值,为1,2,3,4……,当点击按钮时,这列值变为东,西,南,北,中……之类的,
1,2,3,4……与东,西……在一张表里有对应,
点击按钮时,我不想重新绑定gridview,只是改变这一列的值,应该怎么做啊?

------解决方案--------------------
在PreRender里写代码转换

或者在源里写代码绑定如:
 <asp:Label ID="lblItemType" runat="server" Text='<%# Eval("itemtype").Equals(0)?"必选项":"可选项" %>'></asp:Label>
如果是多项可以用if来判别绑定
------解决方案--------------------
1.如果数据不多的话,可放到string[]数组里:
a[1]="东";a[2]="西"...

2.在GridView中添加一摸板列Label1;
在GridView中的RowDataBind事件中赋值;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if(按了Button按扭标志)
((Label)e.Row.Cells[0].FindControl("Label1")).Text=a[Convert.ToInt16(((Label)e.Row.Cells[0].FindControl("Label1")))];
}
}



------解决方案--------------------
你把他们都放在同一列,一列设成Visible=true,一列设成Visible=false,然后你点按钮时自己控制Visible. 试试这样.
------解决方案--------------------
点击按钮是否是进行编辑?
在建立gridview的数据源时,将1,2,3,4对应东南西北这两个表关联进去,该列为模板列,将编辑状态的显示改为“东南西北”的显示
------解决方案--------------------
探讨
1.如果数据不多的话,可放到string[]数组里:
a[1]="东";a[2]="西"...

2.在GridView中添加一摸板列Label1;
在GridView中的RowDataBind事件中赋值;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if(按了Button按扭标志)
((Label)e.Row.Cells[0].FindControl("Label1…