2010-12-20 5 views
0

私は単純なWindows Phone 7プロジェクトを持ち、MVVMを使用していません。 UIの特定のステータスを決定するチェックボックスのグループとその他のコントロールがあります。チェックボックスをチェックすると、コードがあるイベントが発生し、他のチェックボックスや要素の状態を知りたいとします。これはMVVMなしでも可能ですか?ルートビジュアルはメインのUIクラス(main.xamlで起動)を私に与えないので、他のピアコントロールを見つける方法がないようです。実行時にWPFコントロールの状態(チェックボックスなど)を取得する

私はチェックボックスを持つリストボックスを持っているとしましょう。これらのチェックボックスは、XMLに名前を付けてデータバインドされています。

<DataTemplate x:Key="myTemplate"> 
    <StackPanel Orientation="Horizontal"> 
     <CheckBox Name="chkBox" Checked="chkBox_Checked" Tag="{Binding name}"> 
      <TextBlock Text="{Binding name}" FontSize="16" /> 
     </CheckBox> 
    </StackPanel> 
</DataTemplate> 

これは、アイテムをチェック

<ListBox x:Name="lst" SelectionMode="Single" ItemTemplate="{StaticResource myTemplate}" /> 

がchkbox_Checkedイベントに私を取得するリストで使用されています。このグループのすべてのチェックボックスの値をどのようにして決定するのですか?

lst.Itemsはチェックボックスの名前値を取得できますが、これはバインドされるデータ値ですが、アイテムをcheckBox型にキャストしてisChecked値を検査することはできません。

+0

再現し、より良いあなたの問題を理解するのに役立ちますいくつかのサンプルXAMLを投げてください。 – decyclone

答えて

1

xamlのコントロールに名前を付けることができます。この識別子でコードを参照することができます。

など。

<Button Content="Button" Name="button1" Click="button1_Click" /> 

private void button1_Click(object sender, RoutedEventArgs e) { 
    button1.Content = "Clicked"; 
} 
関連する問題