使用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);//获取照片对象
            }
}
复制代码

 

分页使用别的方式

posted @   兮去  阅读(3800)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示