Как извлечь элемент пользовательского интерфейса из шаблона данных?
Я использовал следующий код для создания элементов шаблона данных:
FrameworkElementFactory textCtrl = new FrameworkElementFactory(typeof(TextBox));
Binding binding1 = new Binding();
string path = "Syncfusion";
binding1.Path = new PropertyPath(path);
textCtrl.SetValue(TextBox.TextProperty,binding1);
Binding binding2 = new Binding();
string path2 = "Text1";
binding2.Path = new PropertyPath(path2);
textCtrl.SetValue(TextBox.NameProperty, binding2);
DataTemplate dt = new DataTemplate();
dt.VisualTree = textCtrl;
Как получить текстовое поле из шаблона данных..?
Я попробовал следующие ссылки Ссылка 1
Но я не понял все правильно...
Я использовал приведенный ниже код в xaml
<DataTemplate>
<TextBlock Text="{Binding CellBoundValue}" gridcommon:VisualContainer.WantsMouseInput="False"/>
</DataTemplate>
Может ли кто-нибудь помочь мне в этом?
2 ответа
Решение
Эта ссылка может вам помочь: Создание шаблонов данных WPF в коде правильным способом
Насколько я знаю, Microsoft не рекомендует использовать FrameworkElementFactory, это может несколько раз устареть (не уверен в этом).
Но если вы все равно хотите это сделать, вы должны применить свой DataTemplate для создания экземпляров элементов управления, объявленных в DataTemplate. Вы можете сделать это, например, с помощью ContentControl или ItemsControl.