C# asp.net中的预渲染事件

C# asp.net中的预渲染事件,c#,asp.net,C#,Asp.net,在这里,rgStateTax是一个Rad网格控件。是否有任何理由将项目标记为不可见?PreRender是页面实际显示在屏幕上之前的事件,对吗 PreRender是在生成给定控件/页面的HTML之前发生的事件(稍后发送到浏览器)。因此,通过在此处设置item.Visible=false,它将不会被呈现到HTML中(不管它的ViewState如何) 在这种情况下,当用户编辑/插入一个项目时,代码似乎隐藏了RadGrid中的所有行,我认为这会减少最终用户的注意力。PreRender是在生成给定控件/页

在这里,rgStateTax是一个Rad网格控件。是否有任何理由将项目标记为不可见?PreRender是页面实际显示在屏幕上之前的事件,对吗

PreRender是在生成给定控件/页面的HTML之前发生的事件(稍后发送到浏览器)。因此,通过在此处设置item.Visible=false,它将不会被呈现到HTML中(不管它的ViewState如何)


在这种情况下,当用户编辑/插入一个项目时,代码似乎隐藏了RadGrid中的所有行,我认为这会减少最终用户的注意力。

PreRender是在生成给定控件/页面的HTML之前发生的事件(稍后发送到浏览器)。因此,通过在此处设置item.Visible=false,它将不会被呈现到HTML中(不管它的ViewState如何)


在这种情况下,当用户编辑/插入一个项目时,代码似乎隐藏了RadGrid中的所有行,我认为这会减少最终用户的注意力。

我读到mastertableview表示顶部表格,这表示rad grid第一页中的顶行内容表示网格的顶行或rad grid第一页中的内容,,你能告诉我这方面的情况吗?我知道在预渲染rad网格时发生了什么。我对rad网格不太熟悉,所以我只能给出一个猜测。我在想,当使用RadGrid插入一个新项目时,它会将新项目作为第一个条目(例如,第一页的顶行),因此测试IsItemInserted基本上是问“我是否尝试插入一个新记录?”我读到mastertableview意味着顶表,,这意味着rad grid第一页中的第一行内容意味着rad grid第一页中的第一行内容,你能告诉我这一点吗?我对rad grid预渲染过程中发生的事情有什么想法?我对RadGrid不太熟悉,所以我只能提供一个猜测。我在想,当使用RadGrid插入一个新项目时,它会将新项目作为第一个条目(例如第一页的顶行),因此测试IsItemInserted基本上就是问“我是否尝试插入一个新记录?”
protected void rgStateTax_PreRender( object sender, EventArgs e )
{
    if( rgStateTax.MasterTableView.IsItemInserted )
    {
        foreach( GridItem item in rgStateTax.Items )
        {
            item.Visible = false;
        }
    }

    if( rgStateTax.EditItems.Count > 0 )
    {
        foreach( GridDataItem item in rgStateTax.Items )
        {
            if( item != rgStateTax.EditItems[0] )
            {
                item.Visible = false;
            }
        }
    }
}