J'essaie d'implémenter un contrôle utilisateur wpf qui lie une zone de texte à une liste de doubles à l'aide d'un convertisseur. Comment puis-je définir l'instance du contrôle utilisateur comme paramètre du convertisseur?Quel devrait être le paramètre convertisseur pour cette liaison?
le code pour le contrôle est illustré ci-dessous
Merci
<UserControl x:Class="BaySizeControl.BaySizeTextBox"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:BaySizeControl"
>
<UserControl.Resources>
<local:BayListtoStringConverter x:Key="BaySizeConverter"/>
</UserControl.Resources>
<Grid>
<TextBox Name="Textbox_baysizes"
Text="{Binding RelativeSource={RelativeSource self},
Path=Parent.Parent.BaySizeItemsSource,
Converter={StaticResource BaySizeConverter}}"
/>
</Grid>
</UserControl>
Bien sûr, vous pouvez passer des références d'objet en tant que paramètres de conversion - vrai que cela doit être considéré comme une constante car WPF ne permet pas de ré-affecter le paramètre convertisseur, mais cela ne veut pas dire t être une référence d'objet! –
@Frederic: Je reçois une erreur en essayant ce code. "Property 'Converter' ne supporte pas les valeurs de type 'BaySizeControl.BayListtoStringConverter'". Mon convertisseur nécessitera-t-il des modifications pour fonctionner avec cette solution? –
@Daniel Paull: Cela semble fonctionner. Peux tu développer ta pensée à ce propos?merci –