WPF从整数值填充DataGrid中的Combobox

时间:2013-04-16 10:04:00

标签: c# wpf mvvm datagrid

这似乎是一个简单的问题,但我无法弄明白。 风景:

在C#/ WPF / MVVM中,我有一个显示一些数据的DataGrid。一个字段(一行的单元格)是整数值。现在我需要为该单元格显示一个ComboBox,如果值为0则显示“local”,如果值为1或更大,则显示“Network”。我怎么绑这个?

谢谢。

1 个答案:

答案 0 :(得分:0)

您应该可以使用DataGridTemplateColumn Template来执行此操作。

以下是帮助您的示例:

    <DataGrid Grid.Row="0"  
              AutoGenerateColumns="False" Height="Auto" 
              SelectionMode="Single" ItemsSource="{Binding MyViewItemModels}"  
                  RowDetailsVisibilityMode="Collapsed" HeadersVisibility="Column" CanUserAddRows="False" 
                  GridLinesVisibility="None" AlternationCount="2" AlternatingRowBackground="GhostWhite" Background="White">

        <DataGrid.Columns>

            <DataGridTemplateColumn IsReadOnly="True" MinWidth="50" Width="70" >
                <DataGridTemplateColumn.Header>
                    <Border Height="30">
                        <Label Content="My Name"/>
                    </Border>
                </DataGridTemplateColumn.Header>
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <ComboBox Height="16" ItemsSource="{Binding MyItems, Mode=OneWay}" />
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>
        </DataGrid.Columns>
    </DataGrid>