• 使用SunnyUI的datagridview常用代码(个人常用)


    1、窗体加载时初始化grid
    private void LayOut() {

    dgv.Font = new System.Drawing.Font("微软雅黑", 9F);
    dgv.AutoGenerateColumns = false;
    dgv.AllowUserToAddRows = false;
    dgv.AllowUserToResizeColumns = true;
    dgv.AllowUserToOrderColumns = true;

    DataGridViewCheckBoxColumn checkBoxColumn = new DataGridViewCheckBoxColumn();
    checkBoxColumn.Width = 40;
    checkBoxColumn.Name = "Check";
    checkBoxColumn.HeaderText = "全选";
    dgv.Columns.Add(checkBoxColumn);

    CommonUtil.AddDgvColumns2(dgv, "id", "ID", 110);
    CommonUtil.AddDgvColumns2(dgv, "name", "名称", 0, false);
    CommonUtil.AddDgvColumns(dgv, "Img", "照片", 90);

    }

    2、添加公共类
    //公共类
    public class CommonUtil{
    public
    static void AddDgvColumns(DataGridView dgv, string dgvName, string dgvHeadertext, int dgvWidth = 50, bool dgvVisible = true, bool dgvReadonly = true, bool _Frozen = false) {   if (dgvName == "Img")   {     DataGridViewImageColumn column = new DataGridViewImageColumn();     column.ImageLayout = DataGridViewImageCellLayout.Zoom;     column.Name = dgvName;     column.DataPropertyName = dgvName;     column.HeaderText = dgvHeadertext;     column.Width = dgvWidth;     column.Visible = dgvVisible;     column.Frozen = _Frozen;//是否冻结     dgv.Columns.Add(column);  } else {      dgvWidth = dgvWidth < 2 ? 2 : dgvWidth;     DataGridViewColumn column = new DataGridViewTextBoxColumn();     column.Frozen = _Frozen;//是否冻结     column.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;     column.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;     column.ReadOnly = dgvReadonly;     column.Name = dgvName;     column.DataPropertyName = dgvName;     column.HeaderText = dgvHeadertext;     column.Width = dgvWidth;     column.Visible = dgvVisible;     column.MinimumWidth = dgvWidth; //column.SortMode = DataGridViewColumnSortMode.NotSortable;     dgv.Columns.Add(column);   } } public static void AddDgvColumns2(DataGridView dgv, string dgvName, string dgvHeadertext, int dgvWidth = 50, bool dgvVisible = true, bool dgvReadonly = true, bool _Frozen = false) { dgvWidth = dgvWidth < 2 ? 2 : dgvWidth; DataGridViewColumn column = new DataGridViewTextBoxColumn(); column.Frozen = _Frozen;//是否冻结 column.AutoSizeMode = DataGridViewAutoSizeColumnMode.None; column.ReadOnly = dgvReadonly; column.Name = dgvName; column.DataPropertyName = dgvName; column.HeaderText = dgvHeadertext; column.Width = dgvWidth; column.Visible = dgvVisible; column.MinimumWidth = dgvWidth; if (!dgvReadonly) { column.HeaderText = dgvHeadertext + "*"; } //column.SortMode = DataGridViewColumnSortMode.NotSortable; dgv.Columns.Add(column); } }

     3、数据绑定

    private void LoadList(){
      string sql="select * from user";
      DataSet ds=new DataSet();
       SqlHelper.ExecuteDataSet(ref ds, sql); 
      DataTable dt2 = ds.Tables[1];
         dt.Columns.Add("Img", typeof(Image));
          dgv.Columns["Img"].DefaultCellStyle.NullValue = null;
          dgv.DataSource = dt2;
                for (int i = 0; i < dgv.RowCount; i++)
                {
                    string imgpath = dgv.Rows[i].Cells["imgUrl"].Value.ToString();
                    dgv.Rows[i].Cells["Img"].Value = CommonUtil.GetFtpImage(imgpath);//获取照片对象
                }
    }

    分页使用别的方式

  • 相关阅读:
    C++对象模型
    Session、Application、Cache
    JavaScript事件的几个细节
    algorithm(算法)
    【REST WCF】30分钟理论到实践
    实践Scrum
    调试PostSharp DEMO 遇到的问题
    6.8 按字符串中的部分内容排序
    QObject就有eventFilter,功能很强(随心所欲的进行处理,比如用来QLineEdit分词)
    QPainter就是手里的作图工具,只需要三洋东西:笔(颜色,宽度,样式),字体(写字),刷子(大面积作画),这里有三个典型例子
  • 原文地址:https://www.cnblogs.com/bklsj/p/15091361.html
Copyright © 2020-2023  润新知