相关疑难解决方法(0)

带标题的多项组合框?

是否可以在组合框上绑定多个项目的"列标题"?例如,显示人名的组合框.组合框将显示John Doe.但我想显示列标题:

First   Last
John    Doe
Jane    Doe
Jimmy   Doe
Run Code Online (Sandbox Code Playgroud)

如果不使用数据网格,这可能吗?那么一个简单的解决方案包括使用数据网格呢?我找到了一种将数据网格嵌入到组合框中的解决方案,但它看起来很困难,需要MS Blend.

如果我能把一些标题作为下拉列表的第一行,我会很高兴.

G

这是我的xaml代码与HB的尝试产生编译错误,如评论中所述.

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dg="http://schemas.microsoft.com/wpf/2008/toolkit"
Run Code Online (Sandbox Code Playgroud)
<ComboBox Name="cboPlaceNames" Grid.IsSharedSizeScope="True" ItemsSource="{DynamicResource items}" Height="22" Width="285" Margin="0,6,165,0" SelectedIndex="0" HorizontalAlignment="Right" VerticalAlignment="Top" SelectionChanged="cboPlaceNames_SelectionChanged">
  <ComboBox.Resources>
    <CompositeCollection x:Key="items">
      <ComboBoxItem IsEnabled="False">
        <Grid TextElement.FontWeight="Bold">
          <Grid.ColumnDefinitions>
            <ColumnDefinition SharedSizeGroup="A"/>
            <ColumnDefinition Width="5"/>
            <ColumnDefinition SharedSizeGroup="B"/>
            <ColumnDefinition Width="5"/>
            <ColumnDefinition SharedSizeGroup="C"/>
          </Grid.ColumnDefinitions>
          <Grid.Children>
            <TextBlock Grid.Column="0" Text="Name"/>
            <TextBlock Grid.Column="2" Text="CLLI"/>
            <TextBlock Grid.Column="4" Text="Street"/>
          </Grid.Children>
        </Grid>
      </ComboBoxItem>
      <Separator/>
      <CollectionContainer Collection="{Binding Source={x:Reference cboPlaceNames}, Path=DataContext.Data}"/>
    </CompositeCollection>

    <DataTemplate DataType="x:Type obj:PlaceName">
      <Grid>
        <Grid.ColumnDefinitions>
          <ColumnDefinition SharedSizeGroup="A"/>
          <ColumnDefinition Width="5"/>
          <ColumnDefinition SharedSizeGroup="B"/> …
Run Code Online (Sandbox Code Playgroud)

wpf xaml combobox header

9
推荐指数
1
解决办法
1万
查看次数

资源字典中带有标题的多项目组合框?

我已经按照这个问题的公认答案定义了一个带有标题的多列组合框。

它对我不起作用,所以我对其进行了一些更改,现在它可以工作了。这是创建带有标题的多列组合框的 xaml。

   <Page.DataContext>
       <vm:ItemsViewModel />
   </Page.DataContext>

   <Page.Resources>
       <CollectionViewSource x:Key="UnitsCollection" Source="{Binding Units}" />
   </Page.Resources>

   <ComboBox Grid.Row="0" Grid.Column="4" Grid.ColumnSpan="2" Grid.IsSharedSizeScope="True" 
              x:Name="cbUnits" ItemsSource="{DynamicResource Items}" IsEditable="True" TextSearch.TextPath="Symbol"
              SelectedValue="{Binding SelectedUnit}" SelectedValuePath="UnitID">
        <ComboBox.Resources>
            <CompositeCollection x:Key="Items">
                <ComboBoxItem IsEnabled="False">
                    <Grid TextElement.FontWeight="Bold">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition SharedSizeGroup="A" />
                            <ColumnDefinition Width="50" />
                            <ColumnDefinition SharedSizeGroup="B" />
                        </Grid.ColumnDefinitions>
                        <Grid.Children>
                            <TextBlock Grid.Column="0" Text="Name" />
                            <TextBlock Grid.Column="2" Text="Symbol" />
                        </Grid.Children>
                    </Grid>
                </ComboBoxItem>
                <Separator />
                <CollectionContainer Collection="{Binding Source={StaticResource UnitsCollection}}" />
            </CompositeCollection>

            <DataTemplate DataType="{x:Type models:Unit}">
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition SharedSizeGroup="A" />
                        <ColumnDefinition Width="50" />
                        <ColumnDefinition SharedSizeGroup="B" …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml combobox

4
推荐指数
1
解决办法
7375
查看次数

WPF ComboBox多列

我只是想知道是否有一个可以包含多个列的wpf组合框控件?

如果没有,我需要使用什么XAML才能实现这一目标?

我只是想找一个基本的两列组合框,如果可能的话,

谢谢

wpf xaml combobox

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

combobox ×3

wpf ×3

xaml ×3

c# ×1

header ×1