asp.net gridview 控件如何根据一列内容显示另一列的内容
asp.net中,gridview绑定了一个数据源。我想显示两列,第一列是查找出来的信息,如果第一列显示的是a,第二列就显示1,如果第一列显示b,第二列就显示2。这个应该...
asp.net中,gridview绑定了一个数据源。我想显示两列,第一列是查找出来的信息,如果第一列显示的是a,第二列就显示1,如果第一列显示b,第二列就显示2。这个应该怎么做?
展开
3个回答
展开全部
你的第1列和第2列必须是模板列,在模板列的item里放lable,假设起名为Lable1和Lable2,给你的Lable1的Text属性绑定你从数据库中读到的值,然后给girdview添加RowDataBound事件,在该事件里这样去写:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Lable lable1 = e.Row.FindControl("Lable1") as Lable ;
Lable lable2 = e.Row.FindControl("Lable2") as Lable ;
if(lable1.Text == "a")
{
lable2.Text = "1";
}
if(lable1.Text == "b")
{
lable2.Text = "2";
}
}
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Lable lable1 = e.Row.FindControl("Lable1") as Lable ;
Lable lable2 = e.Row.FindControl("Lable2") as Lable ;
if(lable1.Text == "a")
{
lable2.Text = "1";
}
if(lable1.Text == "b")
{
lable2.Text = "2";
}
}
}
展开全部
楼上正解,当然你也可以把你的业务写在程序中然后直接绑定上去。祝你好运!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
既然你用的是绑定数据源,那么改sql查询语句最简单,假设name为你的第1列,第2列newRow为你想根据第1列数据而变化的列,如下写
SELECT [name]
],case [name] when '条件1' THEN '1' WHEN '条件2 ' then '2' ELSE '默认值'end AS newRow
FROM table1
这样你绑定的gridview回根据返回的数据集自动变化好
SELECT [name]
],case [name] when '条件1' THEN '1' WHEN '条件2 ' then '2' ELSE '默认值'end AS newRow
FROM table1
这样你绑定的gridview回根据返回的数据集自动变化好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询