如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题

 
这两日作者有三个有情侣面试集团的时候遭受那么些面试题,他也给了份原题给小编看到,并不曾什么特别的要点,关于这一类问题,如何在网格上的单元格嵌入八个控件(如按键、超链接等)难点,小编在英特网查找了下那类难点,开采许多解答不过都零乱,本篇小说支持大家精通哪些应对这类难点。

 
微软提供的DataGirdView网格控件可经过GetCellDisplayRectangle()方法将索要的控件嵌入单元格中,如:

this.Load += Form1_Load;

void Form1_Load(object sender, EventArgs e)
{
  MulAutoBtnEdit();
}

private void MulAutoBtnEdit()
{
  this.dataGridView1.Columns.Add(“ColBtnEdit”, “嵌入操作按键”);
澳门太陽城集团登录网址,  this.dataGridView1.Columns[澳门太阳集团城网址,”ColBtnEdit”].Width = 150;
  int index = this.dataGridView1.Columns[“ColBtnEdit”].Index;
  this.dataGridView1.Columns[“ColBtnEdit”]如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。.Resizable =
DataGridViewTriState.False;
  Button btnAdd = GetBtnByType(“BtnAdd”,”新增”);
如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。  Button btnEdit = GetBtnByType(“BtnEdit”, “修改”);
如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。  Button btnDel = GetBtnByType(“BtnDel”, “删除”);
  this.dataGridView1.Controls.Add(btnAdd);
  this.dataGridView1.Controls.Add(btnEdit);
  this.dataGridView1.Controls.Add(btnDel);
  Rectangle rectangle =
this.dataGridView1.GetCellDisplayRectangle(index, 0,
true);//获取当前单元格上的矩形区域
  btnAdd.Size = btnEdit.Size = btnDel.Size = new Size(rectangle.Width
/ 3 + 1, rectangle.Height);
  btnAdd.Location = new Point(rectangle.Left, rectangle.Top);
如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。  btnEdit.Location = new Point(rectangle.Left + btnAdd.Width,
rectangle.Top);
  btnDel.Location = new Point(rectangle.Left + btnAdd.Width +
btnDel.Width, rectangle.Top);
}

private Button GetBtnByType(string strBtnName,string strBtnText)
如何在网格上的单元格嵌入多个控件(如按钮、超链接等)问题。{
  Button btn = new Button();
  btn.Name = strBtnName;
  btn.Text = strBtnText;
  btn.Click += btn_Click;
  return btn;
}

private void btn_Click(object sender, EventArgs e)
{
  if(sender is Button)
  {
    Button btn = (Button)sender;
    MessageBox.Show(string.Format(“点击按键:{0}”,btn.Text));
  }
}

  效果图:

澳门太陽城集团登录网址 1

 
通过上述的操作就可以将三个按键嵌入到单元格中,不思虑维护性、功用难题,只在意给予大家思路,对于“超链接”控件等都可用类似的章程管理,类似网站如下:

 

  在网络批发另一种格局,思路差不离,地址笔者也贴出来:

  

 
关于第三方DevExpress组件上的网格如GridView等,自己并不曾找到好的消除地点难题的方法,有不足之处,知相恋的人事可在留言板上赐教。

  A young idler ~ an old beggar !

You may also like...

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图