C# Windows Phon 8 WP8 ,解決Pivot中PivoitItem可能遇到清不乾淨的弔詭情況。

  • 996
  • 0
  • C#
  • 2015-06-10

一般我們在開發Windows Phone App時,時常會用到Pivot來裝載需要展示的內容,但是若我們的資料是動態的且格式也不一定的情況下我們可能不會採用DataTemplate和Binding的方式來做,所以我們會自定義的創建PivotItem,等到使用者有其他需求時就清除換上新的PivotItem,可是怎麼就清不掉了呢?

本邊文章將協助您解決PivoitItem可能遇到清不乾淨的弔詭情況。

一般我們在開發Windows Phone App時,時常會用到Pivot來裝載需要展示的內容,但是若我們的資料是動態的且格式也不一定的情況下我們可能不會採用DataTemplate和Binding的方式來做,所以我們會自定義的創建PivotItem,等到使用者有其他需求時就清除換上新的PivotItem,可是怎麼就清不掉了呢?

 

本邊文章將協助您解決PivoitItem可能遇到清不乾淨的弔詭情況。

 

首先一般們在抽換Pivot內容時會這樣做

 

1.裝載PivotItems

2.使用者要求其他資訊

3.隱藏Pivot Visibility=Collapsed (若透過網路下載資料,避免Pivot底色還出現在場景上,可暫時使用ProgressBar)

4.清空Pivot  ( 使用PivotItems.Clear() )

5.裝載新的PivotItems

6.顯示Pivot Visibility=Visible

 

上述步驟看起來沒什麼錯誤,但筆者實際測試時卻發現弔詭的問題。

Pivot中PivoitItem竟然沒有被清乾淨,畫面上好像重複繪製了兩次一樣,變得亂七八糟,

 

1

 

經過筆者反覆的追蹤問題,終於測出了解決方案


2

 

解決方案就是,只要不將Pivot的Visibility屬性修改就可以了,

也就是說 不要隱藏Pivot就可以正常運行了,

詳細的原因還不是很清楚,不過至少下次遇到這樣的狀況該如何處理了!!

 


其他相關議題 :

C# Windows 8,Windows Phone 8 WP8,使用程式碼動態產生Chart長條圖,不用Telerik UI也能做。

C# Windows 8,Windows Phone 8 WP8,使用程式碼動態產生ScrollViewer,並放入可捲動的資料。

C# Windows 8,Windows Phone 8 WP8,使用程式碼動態產生Grid。

C# Windows 8,Windows Phone 8 WP8,使用程式碼動態產生StackPanel。

[筆記]C# Windows Phone 8 WP8 開發,找回StackPanel底下Orientation消失的屬性。

 

 

C# Windows Phone 8 WP8 高級開發,製作不循環 Pivot ,圖片(Gallery)導覽不求人! 內附圖文教學!!

C# Windows Phone 8 自訂PivotItem標題,大小、顏色…等,讓Pivot更有顏色 ! !

 

 

文章中的敘述如有觀念不正確錯誤的部分,歡迎告知指正 謝謝
轉載請註明出處,並且附上本篇文章網址 !  感謝。

SUKI

HOLIESTAR