2011-08-23 151 views
1

我想選擇改變項目的背景顏色,但我似乎無法找到一種方法來做到這一點。
我嘗試使用下面的代碼,但無法找到完成它,我需要到colror設置爲自定義的,如「#8e8e8e」:ListBoxItem背景顏色

private void list_SelectionChanged(object sender, SelectionChangedEventArgs e) 
    { 
     if (list.SelectedItem != null) 
     { 
      ListBoxItem a = sender as ListBoxItem; 
      //a.Background= 

      PhoneApplicationService.Current.State["test"] = list.SelectedItem; 
      NavigationService.Navigate(new Uri("/Detail", UriKind.Relative)); 
     } 
     list.SelectedIndex = -1; 
    } 

,所以我需要爲了簡單起見,將選定的項目背景色從ch#改爲#8E8E8E,因爲改變狀態看起來有點複雜,特別是我需要做的就是改變所選項目的背景顏色。
由於提前,

回答

0

你應該看看所選項目可視狀態,如果你想做到這一點。

但是,Metro應用程序的標準行爲和建議的設計最佳做法建議不要使用顏色來指示除ListPicker以外的任何其他選擇。
沒有看到你的應用程序,你如何使用列表框或指示選擇的目的,但很難提供進一步的建議。

+0

見編輯的代碼目前爲止 – Ameen

1

雖然不推薦像馬特已經指出你應該能夠通過使用ControlTemplates和視覺狀態來實現這一點。看看這篇文章windowsphonegeek怎麼看:Part 1Part 2

請讓我們知道,如果您遇到任何問題

+0

我沒有檢查這個環節之前,老實說它並沒有太大的幫助:( 我在帖子中使用了模板,但似乎有東西丟失,我是新的模板綁定的東西,所以這就是爲什麼我試圖用C#代碼而不是模板來解決這個問題。 – Ameen

+0

我知道你是如何感覺,我第一次嘗試使用它時也遇到了問題,現在我沒有時間爲你解決這個問題,但如果沒有其他解決方案出現,我會盡力在本週末回覆你然而 –