2013-10-04 71 views
1

我在复选框内有列表框。我希望在列表框中发生任何点击事件时检查复选框。但它没有检查的问题,只有点击文本块才能检查。任何想法如何?复选框内的列表框 - WPF

<CheckBox Checked="orderItemChecked" 
          Unchecked="orderItemUnchecked" 
          Grid.Column="0" Grid.Row="0" IsChecked="{Binding Path=Completed}" 
          HorizontalContentAlignment="Stretch" > 
        <StackPanel> 
         <TextBlock Text="{Binding Path=sItemName}" ></TextBlock> 
         <ListBox Grid.Row="1" HorizontalAlignment="Left" HorizontalContentAlignment="Stretch" 
           ItemsSource="{Binding Path=aSinglOptns}" 
           Margin="20,0,0,0" 
           ItemTemplate="{StaticResource SinglOptnTmpl}" 
           Style="{StaticResource SheetListStyle}" 
           ItemContainerStyle="{StaticResource ListBoxItemStyle}"/> 

        </StackPanel> 
       </CheckBox> 

回答

3

尝试关闭命中从ListBox测试关:

<ListBox Grid.Row="1" IsHitTestVisible="false" ... /> 
+0

你真了不起:)它的工作:) – William

2

您可以订阅的复选框的事件PreviewMouseLeftButtonUp和检查代码后面。

+0

也是一个很好的解决方案。 – AgentFire