反轉清單
您可以使用清單檢視在聊天體驗中呈現交談,其中的項目會以不同的視覺效果代表傳送者/接收者。 使用不同的顏色和水平對齊方式將訊息與傳送者/接收者分開,有助於使用者在交談中快速定位自己。
Important API:ListView 類別、ItemsStackPanel 類別、ItemsUpdatingScrollMode 屬性
您通常需要呈現清單,使其看起來是從下向上而不是從上向下增長。 當新訊息到達並新增到最後時,先前的訊息會向上滑動,騰出空間讓使用者注意到最新送達的訊息。 但是,如果使用者向上滾動以查看先前的回覆,則送達的新訊息不能導致視覺變化,以免擾亂使用者的注意力。
建立反向清單
若要建立反向清單,請使用以 ItemsStackPanel 作為其項目面板的清單檢視。 在 ItemsStackPanel 上,將 ItemsUpdatingScrollMode 設定為 KeepLastItemInView。
重要
從 Windows 10 版本 1607 開始,即可使用 KeepLastItemInView 列舉值。 在舊版 Windows 10 上執行應用程式時,無法使用此值。
此範例示範如何將清單檢視的項目與底部對齊,並表示當項目發生變更時,最後一個項目應保留在檢視中。
XAML
<ListView>
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsStackPanel VerticalAlignment="Bottom"
ItemsUpdatingScrollMode="KeepLastItemInView"/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
建議
- 對齊來自相對兩側的發送者/接收者訊息,讓使用者清楚地了解交談流程。
- 如果使用者已經在交談結束時等待下一則訊息,則以動畫方式顯示現有訊息以顯示最新訊息。
- 如果使用者未閱讀最後的交談,請勿移動項目以免擾亂使用者的注意力。
取得範例程式碼
- XAML 由下而上清單範例 \(英文\)