Windows Forms
응용 프로그램을 C #으로 코딩 하고 CheckListBox
Control을 사용하고 있습니다.
한 번의 클릭으로 CheckListBox 항목을 확인하는 방법은 무엇입니까?
Windows Forms
응용 프로그램을 C #으로 코딩 하고 CheckListBox
Control을 사용하고 있습니다.
한 번의 클릭으로 CheckListBox 항목을 확인하는 방법은 무엇입니까?
답변:
나는 당신이 찾고 있다고 생각합니다
CheckOnClick 속성
사실로 설정
항목을 선택할 때 확인란을 전환해야하는지 여부를 나타내는 값을 가져 오거나 설정합니다 .Gets or sets a value indicating whether the check box should be toggled when an item is selected.
디자이너를 통해 CheckOnClick을 True로 설정 한 문제를 방금 해결했지만 UI에서 항목을 확인하려면 두 번째 클릭이 여전히 필요했습니다. 내가 찾은 것은 어떤 이유로 든 값을 변경할 때 디자이너 파일이 업데이트되지 않는다는 것입니다. 해결하기 위해 디자이너 파일로 이동하여
this.Product_Group_CheckedListBox.CheckOnClick = true;
그 후 예상대로 작동했습니다. 디자이너가 업데이트하지 않은 이유는 확실하지 않지만이 해결 방법이 누군가에게 도움이 될 수 있습니다.
버튼을 클릭하거나 체크리스트를 클릭하여 모든 것을 확인할 수도 있습니다.
private void checkedListBox1_Click(object sender, EventArgs e)
{
for (int i = 0; i < checkedListBox1.Items.Count; i++)
checkedListBox1.SetItemChecked(i, true);
}
CheckListBox 외부에있는 확인란을 사용하여 모든 항목을 선택 / 선택 취소 할 수도 있습니다. 같은 양식에서 CheckedListBox 근처에 확인란을 추가하고 이름을 CkCheckAll로 지정합니다. CheckBox에 대한 Click 이벤트를 추가합니다 (CheckChanged 이벤트보다 선호 함). CheckedListBox 옆에는 데이터베이스 테이블에 모든 선택된 항목을 추가하는 버튼 (BtnAdd)도 있습니다. CheckedListBox에서 하나 이상의 항목이 선택된 경우에만 활성화됩니다.
private void CkCheckAll_Click(object sender, EventArgs e)
{
CkCheckAll.Text = (CkCheckAll.Checked ? "Uncheck All" : "Check All");
int num = Cklst_List.Items.Count;
if (num > 0)
{
for (int i = 0; i < num; i++)
{
Cklst_List.SetItemChecked(i, CkCheckAll.Checked);
}
}
BtnAdd_Delete.Enabled = (Cklst_List.CheckedItems.Count > 0) ? true : false;
}