2012-02-24 26 views
8

Bất cứ khi nào tôi chạy ứng dụng Windows Phone của tôi trong khi trang XAML là mở, Visual Studio cho biết thêm những điều sau đây để XAML của tôi:Làm thế nào để: Dừng Visual Studio XAML Editor từ Thêm mc: có thể bỏ qua

mc:Ignorable="d" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
d:DesignHeight="768" 
d:DesignWidth="480" 

Làm thế nào tôi có thể ngăn chặn nó làm như vậy? Tôi biết nó sẽ không làm tổn thương tôi để giữ nó, nhưng tôi không muốn nó trong mã của tôi, trừ khi tôi cần nó.

Cảm ơn

Trả lời

0

tôi không thể tìm thấy một tùy chọn cấu hình hoặc registry mà dừng Visual Editor Studio XAML thêm mc:Ignorable đến một trang XAML nhất định.

cách có thể bạn có thể dừng Visual Studio thêm nó bao gồm:

  • Đóng XAML trang của bạn bằng tay trước khi chạy ứng dụng của bạn
  • Đóng XAML trang của bạn tự động trước khi chạy ứng dụng của bạn bằng cách mở rộng Visual Studio (nguồn here) hoặc sử dụng macro (macro được xóa khỏi Visual Studio 11 trở đi)
  • Đặt trình chỉnh sửa để chỉnh sửa XAML để chỉ sử dụng trình soạn thảo văn bản thông thường bên trong Trình chỉnh sửa XAML. (tài nguyên herehere)
  • Xóa XAML đã thêm bằng cách để ứng dụng của bạn hoặc bước xây dựng bài chỉnh sửa tệp XAML. Đoạn mã một phần là here. Nếu sử dụng phương pháp tiếp cận ứng dụng, bạn sẽ cần chỉnh sửa tệp và sau đó tải lại điều khiển có liên quan. Thông tin về sự kiện xây dựng bài đăng có sẵn tại How to: Specify Build Events (C#)Gotcha! Visual Studio Pre/Post-Build Events để sử dụng tệp lô.

Cho dù bạn cần hay không phụ thuộc vào trường hợp sử dụng của bạn cho dù bạn cần chiều rộng và chiều cao thời gian thiết kế được chỉ định cho nhà thiết kế của Visual Studio, đó là quyết định của bạn. Để biết thêm thông tin, hãy xem mc:Ignorable Attribute cho Thuộc tính và Stackoverflow post sau để biết thêm thông tin về d:DesignWidthd:DesignHeight.

+0

Đây là rất nhiều hacks và làm việc xung quanh. Mặc dù tôi ghét khi Visual Studio thêm rằng đánh dấu vào XAML của tôi, tôi không điều nó đáng đi qua tất cả những rắc rối này :) cảm ơn bất kỳ cách nào. – TheBlueSky

2

Khi tạo bất kỳ loại tài liệu được xác định trước nào Visual Studio sử dụng các mẫu mặc định được tạo sẵn.

Ví dụ cho Visual Studio 2010 mẫu tùy chỉnh cho WPF UserControl trông:

<UserControl x:Class="$rootnamespace$.$safeitemname$" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      mc:Ignorable="d" 
      d:DesignHeight="300" d:DesignWidth="300"> 
    <Grid> 

    </Grid> 
</UserControl> 

vị trí tập tin tại máy tính của tôi: C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \ WPF \ 1033 \ WPFUserControl.zip \ UserControl1.xaml

Vì vậy, bạn có thể thấy Microsoft Team đã quyết định bao gồm không gian tên này theo mặc định. Tôi tin rằng bạn có thể tìm thấy mẫu đó cho dự án Windows Phone, chỉ cần nhìn vào thư mục cài đặt Visual Studio, và rõ ràng bạn luôn có thể tạo và sử dụng các mẫu riêng cho bất kỳ loại tài liệu nào.

Và những gì tôi thấy gọn gàng nhất - bạn không cần phải khởi động lại Visual Studio để lấy mẫu cập nhật bạn đã thực hiện. Tôi vừa xóa mc:Ignorable khỏi demplate mặc định và cố gắng tạo UserControl mới - nó đã được tạo bằng cách sử dụng tệp mẫu được cập nhật, vì vậy Visual Studio 2010 nhận các thay đổi khi đang di chuyển, điều này rất hay, các khoản tín dụng cho Microsoft Team.


Hình như tất cả các mẫu có sẵn được nhóm mỗi nghệ/Framework dưới thư mục này:

"C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \"

+0

Tôi đã không nói về việc bao gồm 'mc: Ignorable' và bạn bè trong XAML của tôi khi tạo một tệp mới. Nếu bạn quay trở lại và đọc câu hỏi một lần nữa tôi đã đề cập rằng chúng được chèn vào XAML của tôi mỗi khi tôi chạy ứng dụng trong khi trang đang mở (và đang hoạt động). – TheBlueSky

+0

Ok và khi bạn ngừng thẻ tis ứng dụng vẫn còn trong XAML hoặc bị xóa tự động? Tôi có thể tưởng tượng tại sao Vsual Studio thêm thẻ này, hoặc là vấn đề hoặc cần thiết để đảm bảo một số trạng thái/logic trong khi biên dịch/phân tích XAML, nhưng nếu VS không loại bỏ công cụ này - đây chắc chắn là lỗi – sll

+0

Không, nó không bị xóa. Những thứ được thêm vào đó có thể quan trọng cho thiết kế nhưng tôi hầu như không sử dụng nó ... nó không có ý nghĩa với tôi để có nó anyway ... nhưng bất cứ điều gì, dường như không có cách nào xung quanh nó :) – TheBlueSky

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