0

CheckListBox に関する情報がほとんどないため、代わりに他のものを使用していないのではないかと思います。

選択したチェック リスト ボックス項目がチェックされているかどうかを判断するために、MouseUp イベントで条件文を使用しようとしています。次のコードは機能しません。

if (clBox.SelectedItem == CheckState.Checked)
{
   //Do something
}

選択した CheckListBox 項目がチェックされているかどうかを確認するにはどうすればよいですか? リストに追加するときにいくつかのボックスがチェックされる可能性がある場合、ItemCheck イベントを使用すると面倒なので、MouseUP イベントを使用する必要があります。そうしないと、イベントをトリガーしてしまいます。しかし、ボックスのチェックを外したときに何かが元に戻され、チェックされたときに何かが完了したことを確認するにはどうすればよいでしょうか?

編集: これが Windows フォームであることを忘れていました。

4

3 に答える 3

3

コレクションをチェックしてCheckedItems、SelectedItem が含まれているかどうかを確認できます。このようなことを試してください。

private void clBox_MouseUp(object sender, MouseEventArgs e)
{
    if (clBox.CheckedItems.Contains(clBox.SelectedItem))
    {
        MessageBox.Show("Test");
    }
}
于 2014-03-13T06:27:47.987 に答える
1

ここで、WinForms CheckedListBox (CLB) について心配していると思います。あなたの問題に対するより良いアプローチは、CLB の「ItemCheck」イベントにアタッチすることだと思います。

  private void AttachEvents()
  {
     // ....
     this.checkedListBox.ItemCheck += CheckedListBoxOnItemCheck;
  }

  private void CheckedListBoxOnItemCheck(object sender, ItemCheckEventArgs itemCheckEventArgs)
  {
     var item = checkedListBox.Items[itemCheckEventArgs.Index];
     System.Diagnostics.Debug.WriteLine("Item in question: " + item);
     System.Diagnostics.Debug.WriteLine("Previous check state: " + itemCheckEventArgs.CurrentValue);
     System.Diagnostics.Debug.WriteLine("New check state: " + itemCheckEventArgs.NewValue);
  }

アプリケーションのニーズに応じて、次のことも行う必要があります。

this.checkedListBox.CheckOnClick = true;

そうすると、CLB はほとんどのユーザーが期待するように動作します。

よろしく、アレックス

于 2014-03-13T06:09:15.543 に答える
0
    <asp:CheckBoxList ID="ck1" runat="server">
    <asp:ListItem Text ="1" Value ="1"></asp:ListItem>
    <asp:ListItem Text ="2" Value ="2"></asp:ListItem>
    <asp:ListItem Text ="3" Value ="3"></asp:ListItem>
    <asp:ListItem Text ="4" Value ="4"></asp:ListItem>
    <asp:ListItem Text ="5" Value ="5"></asp:ListItem>
    </asp:CheckBoxList>

これはあなたのチェックリストボックスです..さて、あなたの質問に来てください..

if (chk1.selectedvalue=="1")
{
}
elseif (chk1.selectedvalue=="2")
{
}
elseif (chk1.selectedvalue=="3") 
{
}
elseif (chk1.selectedvalue=="4")
{
}

どのチェックボックスがチェックされているかどうかを確認できるようになりました

于 2014-03-13T05:55:02.723 に答える