2012-10-12 26 views
8

SCENARIO:Trong WP7.1 ListBox chỉ mục được chọn dường như không hoạt động như mong đợi. Làm thế nào một selecteditem có thể được hiển thị trên đầu trang?

  • Trong cửa sổ Điện thoại 7, tôi đang sử dụng hộp danh sách.
  • Giả sử có 200 mục.
  • Bây giờ tôi chọn mục thứ 150 của danh sách
  • Tôi muốn danh sách tải và chọn (và hiển thị) mục thứ 150 ở đầu danh sách sau khi tải.

VẤN ĐỀ:

  • Tôi đang sử dụng HookScrollViewer() như đã đề cập trên trang này (ListBox offset in WP7)
  • Lần đầu tiên các mục được nạp danh sách không hiển thị đúng món đồ (nói nó hiển thị mục thứ 148).
  • Tôi thoát khỏi trang đó và nhấp lại vào mục 150
  • Bây giờ chỉ mục danh sách là chính xác và nó hiển thị 150 mục chính xác ở trên cùng.

HỎI:

  • Am tôi sử dụng giải pháp đúng không?
  • Tôi đang làm gì sai, tôi đã cố gắng xác định giải pháp nhưng không thành công!

GỢI Ý:

  • Nếu bạn có một windows phone, xin vui lòng tải ứng dụng: http://tinyurl.com/9298cdx
  • mở bất kỳ chương và đánh dấu một cái gì đó (bằng cách dài cách nhấn) ở giữa chương.
  • Đóng ứng dụng và mở lại ứng dụng.
  • Nhấp vào dấu trang để mở.
  • Lần đầu tiên nó sẽ không đi đến vị trí chính xác.
  • Bây giờ ĐỪNG đóng ứng dụng, chỉ cần nhấn nút quay lại và nhấp lại vào dấu trang.
  • Lần này vị trí chính xác!
  • Câu hỏi đặt ra là, lần đầu tiên có vấn đề gì?

BỘ LUẬT CỦA TRANG ĐỌC:

Cảm ơn rất nhiều!

+0

Tôi đã kiểm tra XAML và không có gì sai ở đó. Tôi đã xóa hoạt ảnh, nó cũng không hoạt động. – Shahaab

+0

Tôi đã thêm 'UpdateLayout()' cho cả ScrollViewer và ListBox, nó không giúp ích gì. – Shahaab

+0

Vấn đề là nó hoạt động tốt, lần thứ hai nó hoạt động như vậy, tại sao nó không hoạt động lần đầu tiên? Có điều gì tôi đang thiếu? – Shahaab

Trả lời

1

Sau khi gặp khó khăn, tôi đã tìm thấy các vấn đề thực tế và giải pháp của nó.

Vấn đề thực tế:

  • Tôi đang sử dụng phông chữ bên ngoài, trừ những người mà có trong WP theo mặc định.
  • Phông chữ bên ngoài cần thời gian để tải vào bộ nhớ và sau đó văn bản được hiển thị.
  • Trong thời gian đó, danh sách được tải, trong khi phông chữ đang được tải.
  • Cuối cùng văn bản được hiển thị và (có thể do mở rộng), vị trí chỉ mục đã chọn được di chuyển xuống.
  • Không đóng ứng dụng, phông chữ dường như vẫn còn trong bộ nhớ và thời gian tiếp theo không mất nhiều thời gian và id con trỏ hiển thị chính xác.

Giải pháp của tôi:

  • tôi nạp các phông chữ (bên ngoài) trong khi trang chính đang được nạp. Mất khoảng thời gian không đáng kể và do đó, không ảnh hưởng đến hiệu quả của ứng dụng (về mặt thời gian tải)

Tôi muốn nếu bất kỳ kiến ​​trúc sư nào có thể giải thích tốt hơn về những gì đang xảy ra hoặc khác từ ngữ, tôi quan tâm để biết nền tảng kỹ thuật của "vấn đề thực tế".

Cảm ơn rất nhiều đến tất cả những người đã đưa ra đề xuất.

0

Tôi đoán dữ liệu của bạn không cập nhật .Bạn có thể thử sử dụng INotifyPropertyChanged, Nhìn vào ví dụ bạn sẽ hiểu làm thế nào để sử dụng

Các vấn đề liên quan