2011-08-02 43 views
1

WP7應用程序中使用的ListBox的默認行爲是在PhoneAccentBrush中突出顯示所選項目。我發現使用ListBox時,我處理SelectionChanged事件(設置一個屬性並關閉包含ListBox的彈出窗口)時,我從來沒有看到文本顏色更改爲PhoneAccentBrush - 因此用戶永遠不會收到他們已選擇正確的反饋項目。有沒有辦法解決這個問題,並給予用戶反饋(即使只是暫時的)他們選擇了哪個項目。wp7 ListBox SelectionChanged文本顏色

+0

我不是很清楚你的意思,listBox.selectedItem被突出顯示。也許你可以嘗試在listBox數據模板中獲取該項目。 –

+0

如果您在列表框中選擇一個項目時關閉了「包含列表框的彈出窗口」,那麼仍然會顯示選擇的內容? –

+0

延遲SelectionChaged(我的答案在下面)用戶有一個視覺反饋。這是一個短暫的瞬間,但足以給用戶留下足夠的印象。 –

回答

1

耽誤您的SelectionChanged事件處理,例如

void list_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    Dispatcher.BeginInvoke(action); 
} 

void action() 
{ 
    // put your code here 
} 
0

採取Silverlight toolkit並添加(如在其他應用程序推動畫)傾斜的效果。

參考項目中的工具包,並添加命名空間使用該工具包:

<phone:PhoneApplicationPage 
    ... 
    xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"> 

在您DataTemplate中添加附加屬性IsTiltEnabled

<DataTemplate> 
    <Grid toolkit:TiltEffect.IsTiltEnabled="True"> 
     ... 
    </Grid> 
</DataTemplate>