Khi tệp XML UI UI tùy chỉnh được sử dụng để thêm một số tab băng tùy chỉnh trong Access, tab ribbon đã chọn sẽ thay đổi trở lại tab tùy chỉnh đầu tiên bất cứ khi nào biểu mẫu được đóng lại.Có thể ngăn không cho MS Access tự động thay đổi tab ribbon đã chọn khi sử dụng ribbon tùy chỉnh không?
Chúng tôi tải băng tùy chỉnh theo chương trình từ VBA. Tôi đã tạo an accdb that reproduces the problem. Thư mục này cũng bao gồm một tệp XML chứa định nghĩa ribbon. Nó phải nằm trong cùng thư mục với tệp .accdb.
Vấn đề có thể dễ dàng được chứng minh:
- mở cơ sở dữ liệu RibbonTest.accdb,
- chuyển sang Tab2 và mở Form2 sử dụng nút trên ribbon và
- gần Form2.
Lưu ý rằng Tab1 hiện đang hoạt động.
Tất nhiên, trong ví dụ nhỏ này, vấn đề này có vẻ rất nhỏ. Tuy nhiên, chúng tôi có một dự án rất lớn với nhiều tab tùy chỉnh, mỗi tab chứa nhiều nhóm và nút. Người dùng của chúng tôi cảm thấy rất bực bội khi họ tiếp tục mất vị trí của họ trên dải băng mỗi khi họ đóng một biểu mẫu.
Chúng tôi đã điều tra một giải pháp thay thế mà chúng tôi lưu trữ tab đã chọn theo cách lập trình và khôi phục khi chúng tôi nghĩ rằng chúng tôi cần. Tuy nhiên, điều này chứng tỏ khó khăn để làm điều này một cách đáng tin cậy. (Không có API Office để tự động hóa dải băng như thế này, nhưng this article helped.)
Có ai khác đã gặp sự cố này không? Bạn đã tìm cách ngăn tab tự động thay đổi chưa?
Chỉnh sửa: Dường như vấn đề này đã được giới thiệu với bản sửa lỗi được triển khai trong Office 2010 SP1. (Xin lỗi, không có liên kết: không nghĩ rằng tôi có thể có nhiều hơn hai.) Vấn đề không có trong phiên bản RTM. Danh sách sửa lỗi cho SP1 bao gồm: "Access không kích hoạt hoặc trả lại người dùng cho đúng tab Ribbon cho đối tượng cơ sở dữ liệu đã mở trước đó khi người dùng quay trở lại đối tượng đó." Dường như họ đã cố gắng sửa chữa việc sử dụng thuộc tính Form.RibbonName (hỗ trợ các dải băng theo ngữ cảnh), nhưng đã phá vỡ dải băng mặc định trong tiến trình.
Tuyệt vời - đánh dấu phần này là câu trả lời thay vì cách giải quyết của tôi. – Olly