zoukankan      html  css  js  c++  java
  • DateGridView的一些技巧

    如果要把某个List的内容直接绑定到DGV,需要像下面这样做,否则内容无法显示出来:

            struct ReportListStringItem
            {
                public string reportDate { get; set; }
                public string projectName { get; set; }
                public string taskName { get; set; }
                public string timeSpent { get; set; }
                public string activity { get; set; }
            }
            List<ReportListStringItem> repoortListString;

                    dgvHistory.AutoGenerateColumns = true;
                    dgvHistory.DataSource = repoortListString;
                    dgvHistory.ClearSelection();

    如果上面绑定的List是一个没有内容的List,注意不是null,只是没有内容,在重新绑定之后如果点击DGV,会出现“索引-1没有价值”类似的异常,建议绑定前判断List至少有一项内容。

    20120328 Update:

    今天在CodeSmith生成的实体类中加了一个属性,但是怎么都显示不出来,后来看了看实体基类的代码,加上了下面的代码,ok了。

            [Bindable(BindableSupport.Yes)] 
            public string CustomerName
            {
                get;
                set;
            }

    20120710 Add:

    今天再次碰到一个问题,在DataGridViewX(注意不是DataGridView)中有一个复选框列,要通过编程的方式选中复选框,但是搜索网上的文章,99%都提供的是类似这样的方法:

     (dataGridView1.Rows[0].Cells[0] as DataGridViewCheckBoxCell).Value = true;

     但是我反复试了都不行,最后在MSDN论坛上找到一个回复解决了这个问题,至于为什么上面这种做法不行也只能暂时存疑了。

    这个方法就是在绑定的数据源当中加上一列专门用来绑定到复选框的数据列,类似这样:

             [Bindable(BindableSupport.Yes)]

            public bool OnlyForCheck
            {
                get;
                set;
            }
  • 相关阅读:
    详解C#委托,事件与回调函数
    JavaScript Dictionary
    jQuery匹配各种条件的选择器用法
    通用Json的处理办法
    JavaScript 创建类/对象的几种方式
    捕获和记录SQL Server中发生的死锁
    [转] HTML 获取屏幕、浏览器、页面的高度宽度
    [转] 实时监听input输入的变化(兼容主流浏览器)
    [转] Web移动端Fixed布局的解决方案
    [转] offsetParent 到底是哪一个?
  • 原文地址:https://www.cnblogs.com/s5689412/p/2202266.html
Copyright © 2011-2022 走看看