【问题标题】:WPF Combobox displaying default value from databaseWPF 组合框显示来自数据库的默认值
【发布时间】:2020-05-24 10:43:24
【问题描述】:

我正在使用 MongoDB 数据库,我想在组合框中显示来自 MongoDB 的数据作为默认值。但我不知道该怎么做。

这是我的 XAML

<DataGridTextColumn Header="Kaina" Binding="{Binding full_price}" CanUserReorder="False"
                                    IsReadOnly="True"/>
<DataGridTextColumn Header="DV" Binding="{Binding order_quantity}" CanUserReorder="False"
                    IsReadOnly="True"/>
<DataGridTemplateColumn Header="Stalviršio tipas">
  <DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
      <ComboBox x:Name="TableTop" DropDownClosed="TableTop_DropDownClosed" Text="fg">
        <ComboBoxItem Content="A" />
        <ComboBoxItem Content="B" />
        <ComboBoxItem Content="C" />
      </ComboBox>
    </DataTemplate>
  </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

这是我的 MongoDB 数据库文档:

_id:"B0/0045/0214-05_FP0-E202-130/70/90"
electricity_based_on:"FP0-P202"
full_price:1225.95
manufacturing_date:2020-02-13T22:00:00.000+00:00
order_code:"FP0-E202-130/70/90"
order_comment_names:"1) Stalviršis su standartiniu borteliu FP0-000-12.00 SB,
order_name:"Šaldomas stalas 2 durelių"
order_number:"B0/0045/0214-05"
order_quantity:1
unit_price:1225.95
tabletop_letter:"C"
sub3_4:""

我想将 MongoDB 中的“tabletop_letter”显示为“TableTop”组合框作为默认值。你能帮帮我吗?

【问题讨论】:

  • 您的代码中的 MongoDB 查询部分完成了吗?
  • 是的,我有。 //Finding all documents in "Products" collection --&gt; var allDocuments = Classes.MdB.connectDbProducts().Find(new BsonDocument()).ToList(); //Binding MongoDB data to GridView --&gt; Classes.MdB.GridView(productsGrid, allDocuments); //Binding data to DataGrid --&gt; public static void GridView(DataGrid DATAGRIDAS, List&lt;MDBProducts&gt; cursor) { Binding bind = new Binding(); DATAGRIDAS.DataContext = cursor; DATAGRIDAS.SetBinding(ListView.ItemsSourceProperty, bind); }

标签: c# wpf mongodb combobox binding


【解决方案1】:

我找到了这个链接How to display default text "--Select Team --" in combo box on pageload in WPF? 应用了一些修改,它可以工作。

<DataGridTemplateColumn Header="Stalviršio tipas">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Grid>
                                <ComboBox x:Name="TableTop" DropDownClosed="TableTop_DropDownClosed" ItemsSource="{Binding}">
                                    <ComboBoxItem Content="" />
                                    <ComboBoxItem Content="A" />
                                    <ComboBoxItem Content="B" />
                                    <ComboBoxItem Content="C" />
                                </ComboBox>
                                <TextBlock Text="{Binding tabletop_letter}" IsHitTestVisible="False">
                                    <TextBlock.Style>
                                        <Style TargetType="TextBlock">
                                            <Setter Property="Visibility" Value="Hidden"/>
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding ElementName=TableTop,Path=SelectedItem}" Value="{x:Null}">
                                                    <Setter Property="Visibility" Value="Visible"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </TextBlock.Style>
                                </TextBlock>
                            </Grid>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    • 2019-04-16
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多