繁体   English   中英

ListBox 内的 WP7 按钮每隔一次按下只会“点击”一次

[英]WP7 Button inside ListBox only "clicks" every other press

我在列表框的 DataTemplate 中定义了一个按钮。

<phone:PhoneApplicationPage.Resources>        
    <DataTemplate x:Key="ListTemplate">
        <Grid Margin="12,12,24,12">
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto" />
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>

            <Button Grid.Column="0" Name="EnableDisableButton" 
                    Click="EnableDisableButton_Click" 
                    BorderBrush="Transparent">
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                    </Grid.RowDefinitions>
                    <Image Grid.Row="0" Source="\Images\img.dark.png" Width="48" Height="48" Visibility="{StaticResource PhoneDarkThemeVisibility}" />
                    <Image Grid.Row="0" Source="\Images\img.light.png" Width="48" Height="48" Visibility="{StaticResource PhoneLightThemeVisibility}" />
                    <Rectangle Grid.Row="1" Width="48" Height="8" Fill="{Binding CurrentColor}" RadiusX="4" RadiusY="4" />
                </Grid>
            </Button>

            <Grid Grid.Column="1">
              <... more stuff here ...>
            </Grid>
        </Grid>
    </DataTemplate>
</phone:PhoneApplicationPage.Resources>

我看到的是,我第一次按下按钮时,Click 事件被触发。 我第二次按下它时,它没有触发。 第三次按下,开火。 第四次按下,不开火。 等等。最初我将它绑定到一个命令,但它的行为方式相同。 (我在事件处理程序中放置了一个 Debug.WriteLine() 以便我知道它何时触发。)

有任何想法吗? 单击事件每隔一段时间才触发一次,这真的很奇怪。

尝试以下两种“解决方法”之一:

  1. 在您的点击事件回调中,将焦点设置回页面: this.Focus();

  2. 在您的点击事件回调中,将您的ListBoxSelectedItem设置为 null: myListBox.SelectedItem = null;

我认为两者之一应该工作...

点击事件回调= EnableDisableButton_Click方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM