Khi chia sẻ mã giữa WinRT và WP8:Không gian tên nhóm XAML - sử dụng tính không tương thích?
WP8 muốn:
xmlns:vm="clr-namespace:MyApp.ViewModels"
WinRT muốn:
xmlns:vm="using:MyApp.ViewModels"
Điều này có nghĩa bạn không thể chia sẻ mã XAML - như điều khiển người dùng - giữa các dự án cách chúng ta có thể trong WP7, Silverlight, WPF
Có ai tìm thấy một công việc xung quanh không? XmlnsDefinition
thuộc tính trông giống như nó có thể sửa lỗi này, nhưng MS lấy nó ra khỏi WinRT.
Chỉ có thể chia sẻ XAML giữa WP7/SL/WPF bằng cách thực sự duy trì các bản sao riêng biệt của tệp XAML trong mỗi dự án, do đó, "chia sẻ" là một chút nhầm lẫn. Điều đó thực sự thay đổi một chút với sự ra đời của Portable Class Libraries, mặc dù bạn bị giới hạn làm việc với các kiểu và các phương thức đã có mặt trên tất cả các nền tảng đích. Trong trường hợp này, vì việc chia sẻ chỉ là sự đa dạng của "copy the text", bạn có thể tiếp tục làm điều đó (với ngoại lệ là bạn sẽ cần phải điều chỉnh "using" s cho WinRT.) – dlev
Bạn không cần để sao chép các tệp, bạn chỉ có thể thêm chúng dưới dạng tệp được liên kết, do đó bạn chỉ phải duy trì một tệp. Với sự thay đổi này rõ ràng là không thể nữa. – Kenneth
Trên thực tế, trong WP7/SL/WPF nếu bạn gắn bó với các điều khiển cơ bản, bạn có thể chia sẻ XAML. Bí quyết là đặt xaml chính của bạn trong usercontrols. Các usercontrols sau đó có thể được chia sẻ dưới dạng các liên kết trong mỗi dự án VS. Sau đó, xác định một trang hoặc cửa sổ hoặc bất cứ điều gì trong mỗi dự án kết hợp các usercontrol. – jlo