【发布时间】:2014-12-08 00:19:14
【问题描述】:
我有 xaml 代码
<ListView Name="List1" Margin="0,33,0,0"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Visible"
ItemsSource="{Binding Path=Table}" MouseDoubleClick="List1_MouseDoubleClick">
<ListView.View>
<GridView x:Name="_gridView" ColumnHeaderTemplate="{StaticResource BlueHeader}">
<GridViewColumn x:Name="LoyaltyCode" Header="Code" DisplayMemberBinding="{Binding Path=LoyaltyCode}"/>
<GridViewColumn x:Name="LoyaltyName" Header="Name" Width="130" DisplayMemberBinding="{Binding Path=LoyaltyName}" HeaderTemplate="{StaticResource BlueHeaderName}"/>
<GridViewColumn Header="PurProductPonits" DisplayMemberBinding="{Binding Path=PurProductPonits}"/>
<GridViewColumn Header="PurProductAmount" DisplayMemberBinding="{Binding Path=PurProductAmount}"/>
<GridViewColumn x:Name="PurServicePonits" Header="PurServicePonits" DisplayMemberBinding="{Binding Path=PurServicePonits}"/>
<GridViewColumn Header="PurServiceAmount" DisplayMemberBinding="{Binding Path=PurServiceAmount}"/>
<GridViewColumn Header="RedeemPoints" DisplayMemberBinding="{Binding Path=RedeemPoints}"/>
<GridViewColumn Header="RedeemAmount " DisplayMemberBinding="{Binding Path=RedeemAmount}" />
<GridViewColumn Header="LoyaltyID" DisplayMemberBinding="{Binding Path=LoyaltyID}" Width="0"/>
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="TextElement.Foreground" Value="Black"/>
</Trigger>
</Style.Triggers>
</Style>
</GridView.ColumnHeaderContainerStyle>
</GridView>
</ListView.View>
</ListView>
而后面的代码是
foreach (GridViewColumn column in _gridView.Columns)
{
if (column.Width == 0)
continue;
//ComboBoxItem item = new ComboBoxItem();
// item.Content=column.Header;
// item.Tag=column.???;
// cmbSearch.Items.Add(item);
cmbSearch.Items.Add(column.Header);
}
我需要用 column.Header 和 value item 用“DisplayMemberBinding 路径名称”填充组合框的 显示项 例如.. item.Content=代码, item.Tag=忠诚度代码
【问题讨论】:
-
不确定你想要什么。这里的显示项是列标题(对于同一列中的所有单元格都相同),但是您想要的值项到底是什么?你的意思是同一列中的所有值 items 应该添加为组合框的项目?
-
对响应的感谢。每列中的确切数据库字段名称应添加为组合框的值项。在标题中显示代码,bt dbField 名称是 LoyaltyCode,我需要将 LoyaltyCode 添加为值字段...或者简单地说,我怎样才能获得与列绑定的 dbField 名称??
标签: c# wpf xaml listview gridviewcolumn