我试图隐藏从 FrameworkElementFactory 设置的动态组合框。如果我尝试将 Combobox 作为参数,那么我会收到错误“ComboBox”是一种类型,它在给定的上下文中无效,如果我尝试将 fElement 作为参数,那么它会给出错误“无法从 'System.Windows.FrameworkElementFactory' 转换为'System.Windows.DependencyObject'" 我需要 C# 中的解决方案,而不是 xaml 或 ASP.net。
FrameworkElementFactory fElement = new FrameworkElementFactory(typeof(ComboBox));
fElement.SetValue(ComboBox.WidthProperty, 125D);
fElement.SetValue(ComboBox.ItemsSourceProperty, choices);
fElement.SetValue(ComboBox.DisplayMemberPathProperty, "Value");
fElement.SetValue(ComboBox.SelectedValuePathProperty, "Value");
fElement.SetValue(ComboBox.NameProperty, "CONAAM" + rowOnderdeel.OnderdeelID);
//fElement.SetValue(ComboBox.NameProperty, Onderdeelnaam);
fElement.AddHandler(Selector.SelectionChangedEvent, new SelectionChangedEventHandler(cbCursistOnderdeelResultaat));
fElement.SetBinding(ComboBox.TextProperty, bind);
Interaction.GetBehaviors(ComboBox).Add(new HideComboxBehavior());