1

私はC#(ver 4.0)でWindowsフォームアプリケーションに取り組んでいます

CheckedListBox をコピーしたいのですが、参考にはなりません。CheckedListBox のすべての変更がオブジェクトに影響を与えないようにしたいのですが、一度割り当ててから参照しないでください。

以下は私のコードです:

public struct SmartFilter
{
    public int from, to;
    public CheckedListBox cmb;            

}
var temp = new SmartFilter();
    temp.from = Convert.ToInt32(cbNumber2From.SelectedItem);
    temp.to = Convert.ToInt32(cbNumber2To.SelectedItem);

    temp.cmb = cbNumbers2;

最後の行に到達したとき

temp.cmb = cbNumbers2;

(CheckedListBox) にコピーを保存したいのですtemp.cmbが、その後、ウィンドウ内のすべての変更がオブジェクトに影響します。

4

1 に答える 1

3

基本的にCheckedListBoxはできません-クローン化できません。

どのように動作することを期待しますか? これは画面上のコントロールです...クローンには親ウィンドウがなく、画面上にないだけだと思いますか? どのくらいの状態にCheckedListBox興味がありますか?全体ではなく、その側面だけをコピーする必要があるかもしれませんCheckedListBox

補足として、変更可能な構造体は、ほとんどの場合、パブリック フィールドと同様に悪い考えです。

于 2011-01-07T07:22:21.173 に答える