博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

DataGridView 显示和隐藏DataGridViewButtonCell按钮的办法

Posted on 2011-06-12 19:36  moss_tan_jun  阅读(2343)  评论(2编辑  收藏  举报

有时,我们需要在DataGridView中,针对某行数据进行简单的变换操作,且变换后显示的内容要与变换关不一致,不能再变回来,如下图:

网上搜索到一个贴子,里面提供了两种办法,我选用了其中一种。

http://social.msdn.microsoft.com/Forums/en/winformsapplications/thread/f82ec651-6b22-44b0-8ead-15796387424f

就是将这个DataGridViewButtonCell换成 DataGridViewTextBoxCell,非常简单

上图的实现代码:

private void gvSaleOrder_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
        {
            if (gvSaleOrder["writeOff", e.RowIndex].Value.ToString() == "1" && gvSaleOrder["btnConfirm", e.RowIndex].Value.ToString() != "已销账")
            {
                gvSaleOrder["btnConfirm", e.RowIndex] = new DataGridViewTextBoxCell();
                gvSaleOrder["btnConfirm", e.RowIndex].Value = "已销账";
                  
            }
        }