首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GridView和RowDataBound事件

GridView和RowDataBound事件
EN

Stack Overflow用户
提问于 2014-07-09 12:27:22
回答 1查看 687关注 0票数 0

我可以在GridView中编辑单行。

但是在MySQL数据库中,字段"card“的值不是null,我需要在GridView的这一行中停止编辑(并以封闭状态传递该行)。

我尝试过这个解决方案,但是在GridView中,即使字段“卡”的值为空,在中的所有行都是“封闭状态”,为什么呢?

条件被插入到RowDataBound事件中,对吗?

下面是我的密码。

如果你能帮我解决这个问题,我将不胜感激。

代码语言:javascript
复制
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        var obj = ((DataRowView)e.Row.DataItem)["card"];
        ImageButton edit = (ImageButton)e.Row.FindControl("imgbtnEdit");

        if (obj != null)
        {
            edit.Enabled = false;
            edit.ToolTip = "Closed state";
        }
    }


    if (e.Row.RowType == DataControlRowType.Pager)
    {
        DropDownList ddl = (DropDownList)(e.Row.FindControl("ddlpages"));
        Label lblPageCount = (Label)e.Row.FindControl("lblPageCount");

        if (lblPageCount != null)
            lblPageCount.Text = GridView1.PageCount.ToString();

        for (int i = 1; i <= GridView1.PageCount; i++)
        {
            ddl.Items.Add(i.ToString());
        }

        ddl.SelectedIndex = GridView1.PageIndex;

        if (GridView1.PageIndex == 0)
        {
            ((ImageButton)e.Row.FindControl("ImageButton1")).Visible = false;
            ((ImageButton)e.Row.FindControl("ImageButton2")).Visible = false;
        }

        if (GridView1.PageIndex + 1 == GridView1.PageCount)
        {
            ((ImageButton)e.Row.FindControl("ImageButton3")).Visible = false;
            ((ImageButton)e.Row.FindControl("ImageButton4")).Visible = false;
        }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-09 13:15:12

这是因为DBNull.Valuenull是两种不同的东西。

代码语言:javascript
复制
var obj = ((DataRowView)e.Row.DataItem)["card"];
if (!DBNull.Value.Equals(obj))
{
    edit.Enabled = false;
    edit.ToolTip = "Closed state";
}

这将检查"card“值是否为空数据库值,而不是空对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24653706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档