checkedlistbox,checkedlistbox用法
大家好,关于checkedlistbox很多朋友都还不太明白,今天小编就来为大家分享关于checkedlistbox用法的知识,希望对各位有所帮助!
C# winform中,checkedListBox控件搞不懂
1:设置多行,点击CheckListBox控件右上角的三角符号,选择编辑项,在弹出的对话框里面输入你要生成的行就可以了,换行表示开始1个新行,如下
ni
hao
生成的就是2个选项框。
2:我看了下CheckListBox的事件,checkedListBox1_SelectedIndexChanged可以是勾选后触发。不过前提是点击的时候必须点的是复选框,这样才能勾选,如果没有点击复选框,点的是文字,那么还是没有勾选。
大概看了下,checkedListBox不是太好用。我也没能好好使用,希望上面的回答对你有帮助,如果有更好的方法也写出来分享下
vb如何将CheckedListBox中的某一项设置为灰色不可选
整个checkedlistbox为一个整体,可以enabled为True(正常)或False(灰色,不允许编辑)
但checkedlistbox的某一项(Item),就没有enabled属性了,你可以选择它或不选择它,但你不能单独灰掉它..
你可以做的是:用两个checkedlistbox,一个enabled=true,另一个enabled=false,你把所有可选的item(s)都加到第一个checkedlistbox中,而把所有想灰掉的item(s)都移到第二个checkedlistbox中,这样的效果和你想要的是类似的。
C#中checkedlistbox的用法
不知道你的表示listview还是dategridview
这个逻辑不难理解吧
循环获取box1中的选择项,对每项循环添加box2的选择内容
(当然是根据box2的选择值查询表2得到的详细值)
然后每次获得一行完整的表3项,就添加到表3
下面以listview为例
listView3.Items.Clear();
for(inti=0;i<checkedListBox1.CheckedItems.Count;i++)
{//获得表1的选择值
for(intj=0;j<checkedListBox2.CheckedItems.Count;j++)
{//获得表2的选择值
//新的表3的行
ListViewItemlvi=newListViewItem();
lvi.Text=checkedListBox1.CheckedItems[i].ToString();
for(intk=0;k<listView2.Items.Count;k++)
{//获得完整的表2的值,并添加到ListViewItem
if(listView2.Items[k].Text==lvi.Text)
{
lvi.SubItems.Add(listView2.Items[k].SubItems[0].Text);
lvi.SubItems.Add(listView2.Items[k].SubItems[1].Text);
lvi.SubItems.Add(listView2.Items[k].SubItems[2].Text);
listView3.Items.Add(lvi);
break;//这里是跳出intk=0这个循环
}
}
}
}
checkedlistbox用法
一、常用属性和方法
CheckedListBox控件的属性和方法基本上都可以在ListBox控件中找到,可以参看这里:vb.net入门——ListBox控件的使用。值得我们重视的是,CheckedListBox控件的CheckedItems属性,它是CheckedListBox控件中复选框选中的项的集合,我们可以通过检索该属性来获得选中的项。
CheckOnClick指示是否只要一选择项即切换复选框。默认行为是在首次单击时更改选定内容,然后让用户再次单击以应用选中标记。但在某些情况下,您可能愿意一单击项就选中它。
下面我们就直接以实例来了解和掌握CheckedListBox控件的方法和属性。
二、在CheckedListBox控件中添加、移除项
因为CheckedListBox控件控件的使用和ListBox控件相似,所以我们这里就只针对用编程的方法来对CheckedListBox控件的操作。
1、添加项
添加一个名为“新建文件”的项,且复选框为选中状态
CheckedListBox1.Items.Add("新建文件", True)
添加一个名为“拷贝文件”的项,且复选框为未选中状态
CheckedListBox1.Items.Add("拷贝文件", False)
2、删除项
使用Remove来删除项,或者使用RemoveAt来移除指定索引的项
删除CheckedListBox中的选中的项
CheckedListBox1.Items.Remove(CheckedListBox1.SelectedItem)
删除指定索引的项
CheckedListBox1.Items.RemoveAt(0)
3、删除所有项
CheckedListBox1.Items.Clear()
三、确定 CheckedListBox控件中已选中的项
当显示CheckedListBox控件中的数据时,可以循环访问CheckedItems属性中存储的集合,或者使用GetItemChecked方法一一检查列表确定所选中的项。
GetItemChecked方法采用项的索引号作为参数,并返回True或者False。SelectedItems和 SelectedIndices属性并不确定哪些项目已选中,它们只指示哪些项目为突出显示。CheckedItems集合是从0开始的。
示例:
1、在窗体上,放置一个CheckedListBox和两个Button控件,并在CheckedListBox的“字符串编辑器”中添加字面为 a到 l的几个项目,如下图所示:
2、两个按钮中的Click事件的代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If CheckedListBox1.CheckedItems.Count<> 0 Then
Dim i As Integer
Dim s As String=""
For i= 0 To CheckedListBox1.CheckedItems.Count- 1
s= s&"选中项"&(i+ 1).ToString&"="& CheckedListBox1.CheckedItems.Item(i).ToString& ControlChars.CrLf
Next
MessageBox.Show(s)
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i As Integer
Dim s As String=""
s="选中项:"& ControlChars.CrLf
For i= 0 To(CheckedListBox1.Items.Count- 1)
If CheckedListBox1.GetItemChecked(i)= True Then
s= s&"项"&(i+ 1).ToString&"="& CheckedListBox1.Items(i).ToString& ControlChars.CrLf
End If
Next
MessageBox.Show(s)
End Sub
运行测试,把列表框中的第一、第四项选中,如图所示:
现在先点击第一个按钮,弹出的信息如下所示:
指示的项是在选中列表的索引
再单击第二个按钮,弹出的信息如下所示:
很明显,所指示的项索引是整个列表中的索引。
其他的你用事件自己搞定...
如果你还想了解更多这方面的信息,记得收藏关注本站。