Je veux définir mon décorateur personnalisé qui contient du contenu utilisateur. Mais il échoue toujours quand j'essaie de définir le nom d'un contrôle. Je reçois toujours cette exception en essayant de le faire:Comment définir UserControl avec un contenu personnalisé?
Impossible de définir la valeur d'attribut de nom 'butt' sur l'élément 'Button'. 'Button' est sous la portée de l'élément 'UserControl1', qui avait déjà un nom enregistré lorsqu'il était défini dans une autre portée.
Je ne comprends pas pourquoi cela se produit. Voici le codez:
<UserControl x:Class="WpfApplication5.UserControl1"
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"
x:Name="control">
<ContentPresenter Content="{Binding ElementName=control, Path=DataContext}" />
</UserControl>
<Window x:Class="WpfApplication5.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication5"
Title="MainWindow" Height="350" Width="525">
<local:UserControl1>
<local:UserControl1.DataContext>
<Button x:Name="butt" />
</local:UserControl1.DataContext>
</local:UserControl1>
</Window>
Comment faire cela correctement?
Vous ne pouvez pas nommer dans le contrôle de l'utilisateur de commande, au moins en WPF4. – Code0987
Je peux si UserControl a la même mise en page, mais défini par programme (sans fichier XAML) – Poma
Mais XAML façon ce n'est pas possible. J'ai lu quelque part que j'ai oublié. – Code0987