Я пытаюсь преобразовать некоторый код XAML в C#. Вот XAML:Как я могу связать ComboBox.TextBlock в C#
<ComboBox TextBlock.Foreground="{Binding DesiredForegroundBrush}"/>
Я хотел бы сделать то же самое в C# код, но я в недоумении о том, как получить доступ к TextBlock.
Я попытался следующие:
ComboBoxInstance.TextBlock.SetBinding(TextBlock.ForegroundProperty, "DesiredForegroundBrush");
Но TextBlock не доступен в C# код.
Я также попытался добраться до ребенка в поле со списком, но GetChildrenCount возвращает 0:
var childrenCount = VisualTreeHelper.GetChildrenCount(ComboBoxInstance);
Я сделал несколько веб-поиска, но все, что я нашел, было вопросов о том, как связать поля со списком для TextBoxes.
Я чувствую, что должен быть простой способ сделать это. Любая помощь будет оценена!
Update:
Я нашел этот пост:
How to I access an attached property in code behind?
Но это только показывает, как непосредственно присвоить свойство в код, в отличие от настройки привязки на нем.
Вы можете попробовать 'comboBoxTest.SetBinding (TextBlock.ForegroundProperty, новое связывание (« DesiredForegroundBrush »));' Есть ли проблемы с этим? – bars222