2012-02-24 19 views
8

Gdy uruchamiam moją aplikację Windows Phone, natomiast strona XAML jest otwarty, Visual Studio dodaje następujące do mojego XAML:Jak: Zatrzymaj Visual Studio XAML Edytor dodawania MC: ignorable

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" 

jaki sposób można zatrzymać to od tego? Wiem, że nie zaszkodzi mi to zachować, ale nie chcę tego w moim kodzie, chyba że go potrzebuję.

Dzięki

Odpowiedz

0

nie mogę znaleźć opcji konfiguracyjnych lub rejestr, który zatrzymuje wizualny edytor Studio XAML dodając mc:Ignorable do danej strony XAML.

Możliwe sposoby można zatrzymać Visual Studio dodanie go obejmują:

  • Zamknięcie XAML stronę ręcznie przed uruchomieniem aplikacji
  • automatycznie Zamknięcie XAML stronę przed uruchomieniem aplikacji poprzez rozszerzenie Visual Studio (zasoby here) lub przy użyciu makr (makra są usuwane z programu Visual Studio 11 i nowszego)
  • Ustawienie edytora do edytowania XAML tak, aby używał zwykłego edytora tekstu wewnątrz edytora XAML. (zasoby here i here)
  • Usunięcie dodanego XAML przez dodanie do aplikacji lub postu kroku edycji pliku XAML. Kod częściowy to here. Jeśli przyjmiesz podejście do aplikacji, musisz edytować plik, a następnie załadować odpowiednie sterowanie. Informacje o zdarzeniach związanych z budową postu są dostępne pod adresem How to: Specify Build Events (C#) i Gotcha! Visual Studio Pre/Post-Build Events do korzystania z pliku wsadowego.

Niezależnie od tego, czy jest to potrzebne, czy nie, zależy to od tego, czy potrzebujesz zaprojektowanej przez projektanta Visual Studio szerokości i wysokości czasu projektowania, co jest Twoją decyzją. Aby uzyskać więcej informacji, patrz mc:Ignorable Attribute dla samego atrybutu i następujących Stackoverflow post, aby uzyskać dodatkowe informacje na temat d:DesignWidth i d:DesignHeight.

+0

To jest wiele hacków i obejść. Chociaż nienawidzę, gdy Visual Studio dodaje te znaczniki do mojego XAML, nie sądzę, że warto przejść przez te wszystkie kłopoty :) dzięki jakikolwiek sposób. – TheBlueSky

2

Podczas tworzenia dowolnego wstępnie zdefiniowanego dokumentu Visual Studio korzysta z wbudowanych domyślnych szablonów.

Na przykład dla Visual Studio 2010 niestandardowego szablonu dla WPF UserControl wygląda:

<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> 

położenie pliku na moim komputerze: C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \ WPF \ 1033 \ WPFUserControl.zip \ UserControl1.xaml

Tak jak widać zespół Microsoft postanowił domyślnie uwzględnić tę przestrzeń nazw. Wydaje mi się, że możesz znaleźć taki szablon również dla projektu Windows Phone, poszukaj w folderze instalacyjnym Visual Studio i oczywiście zawsze możesz tworzyć własne szablony i używać ich dla dowolnego rodzaju dokumentów.

Co znalazłem najbardziej zadbane - nie trzeba ponownie uruchamiać programu Visual Studio w celu pobrania pobranych aktualizacji szablonów. Właśnie usunąłem mc:Ignorable z domyślnego demplate i próbowałem stworzyć nowy UserControl - został on stworzony przy użyciu właśnie zaktualizowanego pliku szablonu, więc Visual Studio 2010 podnosi zmiany w locie, to jest miłe, kredyty dla Microsoft Team.


Wygląda wszystkie dostępne szablony są pogrupowane według Technologii/Framework pod tym folderze:

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

+0

Nie mówiłem o włączeniu 'mc: Ignorable' i friends w moim XAML podczas tworzenia nowego pliku. Jeśli wrócisz i ponownie przeczytasz pytanie, wspomniałem, że są one wstawiane do mojego XAML za każdym razem, gdy uruchamiam aplikację, gdy strona jest otwarta (i aktywna). – TheBlueSky

+0

OK, a kiedy zatrzymasz aplikację, tag tis nadal znajduje się w XAML lub zostanie automatycznie usunięty? Mogę sobie wyobrazić, dlaczego Vsual Studio dodaje te znaczniki, albo problem, albo jest potrzebny do zagwarantowania pewnego stanu/logiki podczas kompilacji/parsowania XAML, ale jeśli VS nie usuwa tych rzeczy - to na pewno jest błąd – sll

+0

Nie, to nie jest usuwane. Te dodane elementy mogą być ważne dla widoku projektu, ale prawie go nie używam ... nie ma to dla mnie sensu mimo wszystko ... ale cokolwiek, wydaje się, że nie da się tego obejść :) – TheBlueSky

Powiązane problemy