出現這個問題,是跟Expanderview中帶年紀Header和點擊Item程式響應滑鼠點擊訊息兩次有關係,即不僅Header接收到了Tap訊息,響應之後又講此Tap訊息傳遞給Item進行了處理,所以出現了,點擊空白地區,程式先交給Header處理點擊訊息,進行了相應處理,然後又交給Item進行訊息處理,就會出現意想不到的結果,具體要根據項目中處理滑鼠訊息寫在了Listbox中還是寫在Header中還是Item中,或者其中某幾項中,根據自己的項目程式如下,和後台代碼也有關聯,不多贅述了。
如代碼PTA項目中的Pivot中的一項:
<controls:PivotItem Name="Pivot_Phrase" Header="Phrase Book">
<ListBox Name="PhraseList" ItemsSource="{Binding}" VerticalAlignment="Top"
Margin="12,0,0,0">
<!--<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListBox.ItemContainerStyle>-->
<ListBox.ItemTemplate>
<DataTemplate>
<toolkit:ExpanderView Margin="0,0,0,8"
Header="{Binding}"
ItemsSource="{Binding}"
NonExpandableHeader="{Binding}"
IsNonExpandable="{Binding HasSingleMessage}"
Tap="ExpanderView_Tap"
>
<!-- The HeaderTemplate describes the header for an expandable item.
In the sample, it's the TextBlock for "Anne Wallace".-->
<toolkit:ExpanderView.HeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Name="Node" Text="{Binding Title}" Width="300"
Foreground="{StaticResource PhoneForegroundBrush}"
FontSize="{StaticResource PhoneFontSizeExtraLarge}"
FontFamily="{StaticResource PhoneFontFamilySemiLight}"/>
<Image Source="{Binding Arrow}"></Image>
</StackPanel>
</DataTemplate>
</toolkit:ExpanderView.HeaderTemplate>
<toolkit:ExpanderView.ItemTemplate >
<DataTemplate>
<ListBoxItem toolkit:TiltEffect.IsTiltEnabled="True">
<StackPanel>
<TextBlock Text="{Binding Sender}" TextWrapping="Wrap"
Margin="0,8,0,-4" Tap="PhraseList_Tap"
Foreground="{StaticResource PhoneForegroundBrush}"
FontSize="27" Width="400"
FontFamily="{StaticResource PhoneFontFamilySemiLight}"/>
</StackPanel>
</ListBoxItem>
</DataTemplate>
</toolkit:ExpanderView.ItemTemplate>
<toolkit:ExpanderView.NonExpandableHeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" toolkit:TiltEffect.IsTiltEnabled="True">
<TextBlock Text="{Binding Title}" Width="300"
Foreground="{StaticResource PhoneForegroundBrush}"
FontSize="{StaticResource PhoneFontSizeExtraLarge}"
FontFamily="{StaticResource PhoneFontFamilySemiLight}"/>
</StackPanel>
</DataTemplate>
</toolkit:ExpanderView.NonExpandableHeaderTemplate>
</toolkit:ExpanderView>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PivotItem>
圖片中,點擊每一項都會有子功能表,有+號的可以展開,代碼中第二行 VerticalAlignment="Top"加上之後可以讓程式正常運行,未展開時,點擊最後一項的下面附近地區,程式不會有相應,如果不加,項目會進入點擊最後一項之後的清單項目其中一項的狀態,
具體效果見本項目PTA的1月10號之前的版本。和1月11號以後的做對比。