使用GridView的DataAnnotations

时间:2011-04-28 14:25:41

标签: c# winforms gridview

我创建了一个LINQ TO SQL项目来连接我的数据库,我想将一个列表绑定到webforms中的gridview。

如果我在designer.cs自动生成的代码中添加属性Browsable(false),我可以看到该列在gridview中消失。

相反,如果我做了类似

的事情
namespace InterfacesDAL
{
    [MetadataType(typeof(MasterMetadata))]
    public partial class InterfacesMasterLog : INotifyPropertyChanging, INotifyPropertyChanged
    {
        public class MasterMetadata
        {
            [Browsable(false)]
            public int InterfaceLogID;
        }

    }
}

列仍显示在gridview上。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

查看关于数据注释的本教程,我建议您阅读整个MVC EF4教程,因为它很棒!

http://www.asp.net/mvc/tutorials/mvc-music-store-part-6

GridView对数据注释没有很好的支持。 WebGrid(System.Web.Helpers.WebGrid)也不完全支持Annotations。

我建议使用MVCContrib Grid。以下是有关如何使用它的好文章,包括如何自动隐藏列[ScaffoldColumn(false)]

http://www.jeremyskinner.co.uk/2010/04/27/mvccontrib-grid-part-7-auto-generated-columns/