zoukankan      html  css  js  c++  java
  • Winform dataGridView 表头展示隐藏 和 位置调用 用法

      public partial class WeighRecord : Form
        {
            WeighRecordSet headsSet = null;
            public WeighRecord()
            {
                InitializeComponent();
    
                this.RecordTimepx.Format = DateTimePickerFormat.Custom;
                this.RecordTimepx.CustomFormat = " ";
                this.GrossTimepx.Format = DateTimePickerFormat.Custom;
                this.GrossTimepx.CustomFormat = " ";
                this.TareTimepx.Format = DateTimePickerFormat.Custom;
                this.TareTimepx.CustomFormat = " ";
                
                //测试数据
                //var list = new List<WeighRecordDto>();
                //list.Add(new WeighRecordDto() { Number = 1 });
                //list.Add(new WeighRecordDto() { Number = 2 });
                //list.Add(new WeighRecordDto() { Number = 3 });
                //list.Add(new WeighRecordDto() { Number = 4 });
                //list.Add(new WeighRecordDto() { Number = 5 });
    
                //this.dataGV.DataSource = list;
            }
    
            private void RecordTimepx_ValueChanged(object sender, EventArgs e)
            {
                this.RecordTimepx.Format = DateTimePickerFormat.Long;
                this.RecordTimepx.CustomFormat = null;
            }
    
            private void GrossTimepx_ValueChanged(object sender, EventArgs e)
            {
                this.GrossTimepx.Format = DateTimePickerFormat.Long;
                this.GrossTimepx.CustomFormat = null;
            }
    
            private void TareTimepx_ValueChanged(object sender, EventArgs e)
            {
                this.TareTimepx.Format = DateTimePickerFormat.Long;
                this.TareTimepx.CustomFormat = null;
            }
            //查询
            private void SearchBtn_Click(object sender, EventArgs e)
            {
    
            }
    
            //显示设置
            List<TableHeader> childList = null;
            private void ShowSetBtn_Click(object sender, EventArgs e)
            {
                //填充值
                if (childList == null)
                {
                    childList = new List<TableHeader>();
                    for (var i = 0; i < this.WeighTable.Columns.Count; i++)
                    {
                        if (this.WeighTable.Columns[i].Visible)
                        {
                            childList.Add(new TableHeader()
                            {
                                Name = this.WeighTable.Columns[i].HeaderText,
                                Choice = this.WeighTable.Columns[i].Visible,
                            });
                        }
                    }
                }
    
                //传入值
                headsSet = new WeighRecordSet(childList);
                //回传值
                headsSet.itemTextChanged += new EventHandler((sender1, e1) =>
                {
                    childList = headsSet.list; //回传值
                    for (var j = 0; j < headsSet.list.Count; j++)
                    {
                        var item = headsSet.list[j];
                        for (var i = 0; i < this.WeighTable.Columns.Count; i++)
                        {
                            if (this.WeighTable.Columns[i].HeaderText == item.Name)
                            {
                                this.WeighTable.Columns[i].DisplayIndex = j;
                                this.WeighTable.Columns[i].Visible = item.Choice;
                                break;
                            }
                        }
                    }
                });
    
                //弹出窗体
                headsSet.ShowDialog();
            }
        }
      public partial class WeighRecordSet : Form
        {
            public List<TableHeader> list { get; set; }
            public event EventHandler itemTextChanged;
            public WeighRecordSet()
            {
                InitializeComponent();
                list = new List<TableHeader>();
                list.Add(new TableHeader() { Name = "序号" });
                list.Add(new TableHeader() { Name = "车牌号" });
                list.Add(new TableHeader() { Name = "司机" });
                list.Add(new TableHeader() { Name = "货品" });
                list.Add(new TableHeader() { Name = "毛重" });
                list.Add(new TableHeader() { Name = "皮重" });
                list.Add(new TableHeader() { Name = "净重" });
                list.Add(new TableHeader() { Name = "扣重" });
                list.Add(new TableHeader() { Name = "实重" });
                list.Add(new TableHeader() { Name = "毛重时间" });
                list.Add(new TableHeader() { Name = "皮重时间" });
                list.Add(new TableHeader() { Name = "单号" });
                list.Add(new TableHeader() { Name = "皮重司磅员" });
                list.Add(new TableHeader() { Name = "毛重司磅员" });
                list.Add(new TableHeader() { Name = "记录时间" });
    
                //list.Add(new TableHeader() { Name = "单价" });
                //list.Add(new TableHeader() { Name = "总价" });
                //list.Add(new TableHeader() { Name = "浓度" });
                //list.Add(new TableHeader() { Name = "体积" });
    
                list.Add(new TableHeader() { Name = "单价(元)" });
                list.Add(new TableHeader() { Name = "总价(元)" });
                list.Add(new TableHeader() { Name = "浓度(kg/L)" });
                list.Add(new TableHeader() { Name = "体积(L)" });
    
                for (var i = 0; i < list.Count; i++)
                {
                    this.HeaderLv.Items.Add(list[i].Name);
                    this.HeaderLv.Items[i].Checked = list[i].Choice;
                }
                
            }
    
            public WeighRecordSet(List<TableHeader> list)
            {
                InitializeComponent();
                for (var i = 0; i < list.Count; i++)
                {
                    this.HeaderLv.Items.Add(list[i].Name);
                    this.HeaderLv.Items[i].Checked = list[i].Choice;
                }
            }
    
            //上移
            private void UpperBtn_Click(object sender, EventArgs e)
            {
                if (this.HeaderLv.SelectedItems.Count == 0)
                {
                    return;
                }
    
                HeaderLv.BeginUpdate();
    
                if (this.HeaderLv.SelectedItems[0].Index > 0)
                {
                    foreach (ListViewItem var in HeaderLv.SelectedItems)
                    {
                        ListViewItem item = var;
                        int indexSelectedItem = var.Index;
                        HeaderLv.Items.RemoveAt(indexSelectedItem);
                        HeaderLv.Items.Insert(indexSelectedItem - 1, item);
                    }
                }
                HeaderLv.EndUpdate();
    
                if (HeaderLv.Items.Count > 0 && HeaderLv.SelectedItems.Count > 0)
                {
                    HeaderLv.Focus();
                    HeaderLv.SelectedItems[0].Focused = true;
                    HeaderLv.SelectedItems[0].EnsureVisible();
                }
    
            }
            //下移
            private void UnderBtn_Click(object sender, EventArgs e)
            {
                if (this.HeaderLv.SelectedItems.Count == 0)
                {
                    return;
                }
                this.HeaderLv.BeginUpdate();
                int indexMaxSelectedItem = HeaderLv.SelectedItems[HeaderLv.SelectedItems.Count - 1].Index;
    
                if (indexMaxSelectedItem < HeaderLv.Items.Count - 1)
                {
                    for (int i = this.HeaderLv.SelectedItems.Count - 1; i >= 0; i--)
                    {
                        ListViewItem item = this.HeaderLv.SelectedItems[i];
                        int indexSelectedItem = item.Index;
                        HeaderLv.Items.RemoveAt(indexSelectedItem);
                        HeaderLv.Items.Insert(indexSelectedItem + 1, item);
                    }
                }
                HeaderLv.EndUpdate();
    
                if (HeaderLv.Items.Count > 0 && HeaderLv.SelectedItems.Count > 0)
                {
                    HeaderLv.Focus();
                    HeaderLv.SelectedItems[HeaderLv.SelectedItems.Count - 1].Focused = true;
                    HeaderLv.SelectedItems[HeaderLv.SelectedItems.Count - 1].EnsureVisible();
                }
    
            }
            //确定
            private void SaveBtn_Click(object sender, EventArgs e)
            {
                list = new List<TableHeader>();
                for (var i = 0; i < this.HeaderLv.Items.Count; i++)
                {
                    list.Add(new TableHeader()
                    {
                        Name = this.HeaderLv.Items[i].Text,
                        Choice = this.HeaderLv.Items[i].Checked,
                    });
                }
                if (!list.Exists(s => s.Choice))
                {
                    MessageBox.Show("请至少勾上一列!");
                    return;
                }
                //事件
                if (itemTextChanged != null)
                {
                    itemTextChanged(this, e);
                }
                this.Close();
            }
        }
  • 相关阅读:
    ERROR Function not available to this responsibility.Change responsibilities or contact your System Administrator.
    After Upgrade To Release 12.1.3 Users Receive "Function Not Available To This Responsibility" Error While Selecting Sub Menus Under Diagnostics (Doc ID 1200743.1)
    产品设计中先熟练使用铅笔 不要依赖Axure
    12.1.2: How to Modify and Enable The Configurable Home Page Delivered Via 12.1.2 (Doc ID 1061482.1)
    Reverting back to the R12.1.1 and R12.1.3 Homepage Layout
    常见Linux版本
    网口扫盲二:Mac与Phy组成原理的简单分析
    VMware 8安装苹果操作系统Mac OS X 10.7 Lion正式版
    VMware8安装MacOS 10.8
    回顾苹果操作系统Mac OS的发展历史
  • 原文地址:https://www.cnblogs.com/chxl800/p/13754689.html
Copyright © 2011-2022 走看看