快捷方式(e。的项目。项类型==ListItemType.项目|e。的项目。项类型==ListItemType.AlternatingItem)

StackOverflow https://stackoverflow.com/questions/1202237

  •  05-07-2019
  •  | 
  •  

当使用网格中ASP.Net 是没有真的没有快捷的方法

(e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem) 

基本上,"项目是一个项目不是一个标题、脚注、隔板".

我还没有能够找到一个,但我想我会把它来计算器如果我看到缺少一个。

有帮助吗?

解决方案

您可以为此创建自己的扩展方法:

using System.Web.UI.WebControls;

public static class UiControlsHelper
{
    public static bool IsItem(this DataGridItem item)
    {
        return item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem;
    }
}

然后你可以像这样使用它:

e.Item.IsItem();

以下是GridView的相同内容:

public static bool IsDataRow(this GridViewRow row)
{
    return row.RowType == DataControlRowType.DataRow;
}

其他提示

加入一个 答案 一个一个 我的问题s.

你可以代替:

if (e.Item.ItemType != ListItemType.Item && e.Item.ItemType...

if (e.Item.DataItem != null) ...

他的回答,不是我的。我已经没有进行测试。我不知道如果这是:

  • 有效的
  • 记录了
  • 支持
  • 受到改变,在未来版本。净框架

有很好的可能的情况下,数据项分配,但这不是一个有效的项目。我会把它给别人的测试,表决,并发表评论。

不是捷径,而是将其封装到函数中,并且您的代码将更具可读性。

制作扩展方法是一个方便的地方。 。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top