【问题标题】:Checkbox in listview control列表视图控件中的复选框
【发布时间】:2010-09-08 19:24:51
【问题描述】:

你能有一个多列列表视图控件,其中一列是一个复选框吗?示例代码或链接将不胜感激。

我正在使用 Visual Studio 2005

【问题讨论】:

    标签: c# user-interface visual-studio-2005 checkbox


    【解决方案1】:

    Allan Anderson 创建了一个自定义控件来让您执行此操作。 你可以在这里找到它:http://www.codeproject.com/KB/list/aa_listview.aspx

    这是该控件的一些示例代码:

    
        GlacialList mylist = new GlacialList();
    
    mylist.Columns.Add( "Column1", 100 ); // this can also be added 
    
             // through the design time support 
    
    mylist.Columns.Add( "Column2", 100 ); 
    mylist.Columns.Add( "Column3", 100 ); 
    mylist.Columns.Add( "Column4", 100 ); 
    
    GLItem item;
    
    item = this.glacialList1.Items.Add( "Atlanta Braves" );
    item.SubItems[1].Text = "8v";
    item.SubItems[2].Text = "Live";
    item.SubItems[2].BackColor = Color.Bisque;
    item.SubItems[3].Text = "MLB.TV"; 
    
    item = this.glacialList1.Items.Add( "Florida Marlins" );
    item.SubItems[1].Text = "";
    item.SubItems[2].Text = "Delayed";
    item.SubItems[2].BackColor = Color.LightCoral;
    item.SubItems[3].Text = "Audio";
    
    
    item.SubItems[1].BackColor = Color.Aqua; // set the background 
    
          // of this particular subitem ONLY
    
    item.UserObject = myownuserobjecttype; // set a private user object
    
    item.Selected = true; // set this item to selected state
    
    item.SubItems[1].Span = 2; // set this sub item to span 2 spaces
    
    
    ArrayList selectedItems = mylist.SelectedItems; 
               // get list of selected items
    

    【讨论】:

      【解决方案2】:

      也许是ListView.Checkboxes

      【讨论】:

        【解决方案3】:

        您可以改用网格视图,因为这样可以更好地控制列内容。

        【讨论】:

        • 你有这方面的例子吗?
        • 是的,类似于:myGridDataView.Columns.Add(new DataGridViewCheckBoxColumn());
        【解决方案4】:

        你可以试试TreeViewAdv。它是开源的,托管在 sourceforge 上。

        【讨论】:

          【解决方案5】:

          最好使用网格视图控件,但如果您希望有一列带有复选框并且该列是第一个,您可以编写:

          this.listView1.CheckBoxes = true;
          

          【讨论】:

          • 赞成,虽然我猜它不一定是第一列;
          【解决方案6】:

          如下所示添加复选框列。

          myListView.CheckBoxes = true;
          myListView.Columns.Add(text, width, alignment);
          

          像下面这样添加 ListViewItem。

          ListViewItem lstViewItem = new ListViewItem();
          lstViewItem.SubItems.Add("Testing..");
          lstViewItem.SubItems.Add("Testing1..");
          
          myListView.Items.Add(lstViewItem);
          

          【讨论】:

            【解决方案7】:

            你为什么不试试XPTable by Mathew Hall

            【讨论】:

              【解决方案8】:

              您可以将CheckBoxes 属性设置为true。在代码中可以这样完成:

              listView1.CheckBoxes = true;
              

              【讨论】:

                猜你喜欢
                • 2012-12-20
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2016-04-25
                • 2015-02-24
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多