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

发布于 2022-09-01 23:43:04 字数 114 浏览 9 评论 0

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

五里雾 2022-09-08 23:43:04

在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去动态生成,这样扩展性会比较高,样式也比较灵活。

秋意浓 2022-09-08 23:43:04

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

        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;

            }
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文