当前位置:  编程技术>.net/c#/asp.net

C# listview添加combobox到单元格的实现代码

    来源: 互联网  发布时间:2014-10-30

    本文导语:  实现代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partia...

实现代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
  public partial class Form1 : Form
  {
    ListViewItem lvi;
    public Form1()
    {
      InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
      comboBox1.Visible = false;
      listView1.Columns.Add("第一列");
      listView1.Columns.Add("第二列");
      listView1.Columns.Add("第三列");
      this.comboBox1.Items.Add("科比");
      this.comboBox1.Items.Add("姚明");
      this.comboBox1.Items.Add("杜兰特");
      this.comboBox1.Items.Add("邓肯");
      ListViewItem item;
      item = new ListViewItem(1.ToString());
      item.SubItems.Add("姚明");
      item.SubItems.Add("科比");
      listView1.Items.Add(item);
      item = new ListViewItem(2.ToString());
      item.SubItems.Add("邓肯");
      item.SubItems.Add("杜兰特");
      listView1.Items.Add(item);

    }

    private void listView1_MouseUp(object sender, MouseEventArgs e)
    {

      lvi = this.listView1.GetItemAt(e.X, e.Y);
      if (lvi != null)
      {
        //获取选中行的Bounds 
        Rectangle Rect = lvi.Bounds;
        int LX = listView1.Columns[0].Width;
        int RX = listView1.Columns[0].Width + listView1.Columns[1].Width;
        // if (e.X > RX || e.X < LX)
        //{
        this.comboBox1.Visible = false;
        Rect.X = listView1.Left + listView1.Columns[0].Width + 2;
        Rect.Y = this.listView1.Top + 2+Rect.Y;
        Rect.Width = listView1.Columns[1].Width + 2;
        this.comboBox1.Bounds = Rect;
        this.comboBox1.Text = lvi.SubItems[1].Text;
        this.comboBox1.Visible = true; 
        this.comboBox1.BringToFront();
        this.comboBox1.Focus();
        //}
        // int intColIndex = lvi.SubItems.IndexOf(lvi.GetSubItemAt(e.X, e.Y));
      }
    }

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
      lvi.SubItems[1].Text = comboBox1.Text;
      // comboBox1.Visible = false;
    }

    private void comboBox1_MouseLeave(object sender, EventArgs e)
    {
      lvi.SubItems[1].Text = comboBox1.Text;
     // comboBox1.Visible = false;
    }
  }
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.swing.text.html类listview的类成员方法: listview定义及介绍
  • ScrollView与ListView合用(正确计算Listview的高度)的问题解决
  • java命名空间javax.swing.text.html类listview的类成员方法: setpropertiesfromattributes定义及介绍
  • android ListView的右边滚动滑块启用方法 分享
  • java命名空间javax.swing.text.html类listview的类成员方法: paint定义及介绍
  • android中ListView多次刷新重复执行getView的解决方法
  • java命名空间javax.swing.text.html类listview的类成员方法: paintchild定义及介绍
  • Android Horizontal ListView
  • andriod中ListView, listItem布局和convertView的缓存与重用详解
  • 谁能给我一个minigui中listview的例子?急!!!!
  • android中如果为listview的item添加listener,也能为item中的button添加listener
  • Android笔记之:在ScrollView中嵌套ListView的方法
  • android ListView自动滚动方法
  • 滑动刷新的ListView Android PullToRefresh
  • android listview 水平滚动和垂直滚动的小例子
  • 解决EditText、ListView以及GridView同时使用,输入法自动跳出来的方法
  • Android用ListView显示SDCard文件列表的小例子
  • JqueryMobile动态生成listView并实现刷新的两种方法
  • listview里子项有按钮的情况使用介绍
  • listview控件实现点击列表头进行listview排序示例分享
  • android开发之横向滚动/竖向滚动的ListView(固定列头)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3