【问题标题】:How can I bind a list/collection of strings to the rows of a column in a data grid in WPF?如何将字符串列表/集合绑定到 WPF 中数据网格中列的行?
【发布时间】:2019-08-29 19:41:55
【问题描述】:

我是 WPF 和数据绑定的新手。我尝试将字符串列表绑定到 WPF 中数据网格列 Animals 上的一行。我不确定我做错了什么,但是当我运行解决方案时该列显示为空白。以这种方式添加行,而不是使用 DataTable 并循环遍历列表并添加行,因为我添加的下一列将是 Combobox 类型,所以我不想在 DataTable 中实现 Ui 元素。

public List<string> Animals {get; set;} = new List<string>
{
    "Dogs",
    "Cats",
    "Birds"
};



<DataGrid

filtergrid:DataGridExtensions.UseBackgroundWorkerForFiltering="True"
                filtergrid:DataGridExtensions.IsFilterVisible="True"
                filtergrid:DataGridExtensions.IsClearButtonVisible="False"
                ColumnHeaderStyle="{StaticResource {ComponentResourceKey 
TypeInTargetAssembly={x:Type filtergrid:DataGridHeaderFilterControl}, 
ResourceId=DataGridHeaderFilterControlStyle}}"
                AutoGenerateColumns="False"
                ItemsSource="{Binding}"
                CanUserAddRows="False"
                HorizontalAlignment="Stretch"
                Margin="10,50,0,0"
                HorizontalScrollBarVisibility="Auto">
                <DataGrid.Columns>
                    <DataGridTextColumn Header="Animals" Width="Auto" 
Binding="{Binding Animals}" IsReadOnly="True" />                       
                </DataGrid.Columns> 
            </DataGrid>

【问题讨论】:

    标签: c# list datagrid


    【解决方案1】:

    您的代码似乎正确,但为了显示某些内容,我认为您需要进行选择。

    因此,您可以将属性绑定到设置为 0 或您喜欢的任何值的 SelectedIndex。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-15
      • 2017-07-07
      • 1970-01-01
      • 2013-04-15
      • 2011-04-07
      • 2012-03-12
      相关资源
      最近更新 更多