このようなコードでチェックボックスを作成することはおそらく避けるべきです。あなたにとって役立つかもしれないものは、チェックボックスのミニ「ViewModel」です。このようなもの:
public class Option
{
public string Text {get; set;}
public bool IsChecked {get; set;}
}
次に、次のようにこれらのオプションのコレクションを作成できます。
var options = new ObservableCollection<Option>();
これが設定されたら、ObservableCollection を ItemsControl にバインドできます。
<ItemsControl ItemsSource="{Binding options}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<CheckBox Content="{Binding Text}" IsChecked="{Binding IsChecked}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
その XAML は、オプション コレクションに追加したオプションのチェックボックスを作成します。本当に素晴らしいことは、どのオプションが選択されているかをオプション コレクションに尋ねることができるようになったことです。
var selectedNames = from option in options
where option.IsChecked
select option.Text;
データ バインディングとテンプレートの使用は、Silverlight/WPF で習得する必要がある手法です。これは非常に重要な概念であり、アプリケーションで驚くべきことができるようになります。