2009-02-26 9 views
0

En VisualStudio 2008, la surface de design est tout simplement vide depuis que j'ajouté ce style à App.xaml:brisé Design-Surface dans VS2008

<Style x:Key="RightAlignedCell" TargetType="data:DataGridCell"> 
     <Style.Setters> 
      <Setter Property="HorizontalContentAlignment" Value="Right" /> 
     </Style.Setters> 
    </Style> 

et en ajoutant cet espace de noms requis en haut pour faire données: resolveable

xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data" 

Lorsque vous exécutez l'application Silverlight, tout fonctionne très bien. Cependant, la surface de conception est vide et je reçois cette erreur apparaître lors de l'édition du XAML:

valeur d'attribut non valide données: DataGridCell pour les biens TargetType

Comme l'a dit, cette erreur est juste quelque chose qui se produit pendant la conception. La compilation fonctionne parfaitement. Qu'est-ce que je fais mal, pourquoi le concepteur ne peut-il pas résoudre correctement cet espace de noms?

Mise à jour: Aussi quand je déplace le style d'App.xaml à Page.xaml, le concepteur fonctionne à nouveau .. Des idées?

Répondre

0

Avez-vous essayé ce modèle?

<Style x:Key="RightAlignedCell" TargetType="{x:Type data:DataGridCell}"> 
    <Style.Setters> 
     <Setter Property="HorizontalContentAlignment" Value="Right" /> 
    </Style.Setters> 
</Style> 
+0

Cela provoque l'erreur "Valeur d'attribut non valide {x: Type de données: DataGridCell} pour la propriété TargetType." – driAn

0

Cela semble être un bug connu selon la FAQ MS Silverlight, aucun moyen de résoudre ce problème.

0

Déplacer la déclaration xmlns vers le dictionnaire de ressources. Comme ceci: <ResourceDictionary xmlns:myconverters="clr-namespace:MyCustomConverters;assembly=MyCustomConverters"> ... </ResourceDictionary>

exemple se trouve ici: blog.andrew-veresov.com/post/Silverlight-20-usage-of-the-converters-from-external-assembly-in-appxaml.aspx