首页 > .net的Gridview如何根据数据的不同,显示不同的按钮?

.net的Gridview如何根据数据的不同,显示不同的按钮?

GridView绑定了数据源之后,比如数据的某列是0或者1,如何根据0,1的不同,去设置GridView里面的按钮可用和不可用?如果实在不能这样做,那有什么简单的方法代替??谢谢!


这是我写的用来实现的一个方法。

        protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                // Display the company name in italics.
                DateTime nowdate = DateTime.Now;
                DateTime shouldreturndate = Convert.ToDateTime(e.Row.Cells[4].Text);

                e.Row.Cells[5].Enabled = DateTime.Compare(nowdate, shouldreturndate) < 0;

            }
        }

在gridview的事件中有一个行数据绑定事件,好像叫这个RowDataBound事件(你自己找找在确认一下),这个是绑定gridview的每一行数据时发生的,这时你就可以对每一行进行判断了。
例如:

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
            if (((button)e.Row.Cells[5].Controls[0]).Text="0")
            {
                ((button)e.Row.Cells[5].Controls[0]).Enable = false;
            }
            else
            {
                ((button)e.Row.Cells[5].Controls[0]).Enable = true;
            }
            //上面这个判断可以用一个三目表达式一次搞定
    }

现在做这样的行数据已经不提倡这样做了,应该用js+html去动态生成,这样扩展性会比较高,样式也比较灵活。

【热门文章】
【热门文章】