以编程方式 ComboBox VirtualizingStackPanel WPF

Posted

技术标签:

【中文标题】以编程方式 ComboBox VirtualizingStackPanel WPF【英文标题】:ComboBox VirtualizingStackPanel WPF Programmatically 【发布时间】:2021-12-15 05:45:10 【问题描述】:

我正在以编程方式创建一个组合框,但我不知道如何使用 C# 添加虚拟化堆栈面板。

C#

  ComboBox newCombo = new ComboBox();
  newCombo.IsEditable = true;
  newCombo.DisplayMemberPath = "DisplayName";
  newCombo.SelectedValuePath = "Value";
  newCombo.SelectedValue = "Value";

XAML

 <ComboBox Grid.Row="0" Grid.Column="1" x:Name="cbOrigin" Grid.ColumnSpan="2" IsEditable="True"
                DisplayMemberPath="DisplayName"
                SelectedValuePath="Value"
                SelectedValue="Binding Path=Value" >
                <ComboBox.ItemsPanel>
                    <ItemsPanelTemplate>
                        <VirtualizingStackPanel />
                    </ItemsPanelTemplate>
                </ComboBox.ItemsPanel>
            </ComboBox>

【问题讨论】:

【参考方案1】:

可能是这样的:

ComboBox newCombo = new ComboBox();
newCombo.IsEditable = true;
newCombo.DisplayMemberPath = "DisplayName";
newCombo.SelectedValuePath = "Value";
newCombo.SelectedValue = "Value";
newCombo.ItemsPanel = new ItemsPanelTemplate(new 
FrameworkElementFactory(typeof(VirtualizingStackPanel)));

【讨论】:

以上是关于以编程方式 ComboBox VirtualizingStackPanel WPF的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式设置 Combobox.Selected,但我无法显示选择

如何以编程方式在 JavaFX ComboBox 中设置字符串值

如何在 WPF 的 Datagrid 中设置以编程方式生成的 ComboBox 的启用属性?

JavaFX:以编程方式展开组合框

jQuery ComboBox:无论我尝试啥,我都无法将值返回到我的选择框(无法以编程方式选择所需的选项)

如何以编程方式从viewmodel中选择listview项?