2009-09-14 105 views
9

我有一个程序,我需要用户在数据网格中输入数据。我虽然设置'CanUserAddRows'的简单行为足以让用户添加新行,但它似乎不会削减它。WPF中的可编辑数据网格

有什么我需要定义,使他们工作?我的datagrid中有组合框和文本框,所以它是很常见的控件。

我到目前为止的代码是这样的

<dg:Datagrid Name="GridFournisseur" ItemsSource="{Binding}" 
    Margin="423,41,23.5,0" Height="193" VerticalAlignment="Top" 
    CanUserAddRows="True" CanUserDeleteRows="True" IsTabStop="True" RowHeight="12"       SelectionUnit="CellOrRowHeader"> 

    <dg:DataGrid.Columns> 

     <dg:DataGridComboBoxColumn Header="Fournisseur" Width="*" MinWidth="150"             
             IsReadOnly="False" /> 

     <dg:DataGridTextColumn Header="Prix" Width="SizeToHeader" MinWidth="50" 
             Binding="{Binding Categorie}" 
             IsReadOnly="False"/> 
     <dg:DataGridTextColumn Header="Délai" Width="SizeToHeader" MinWidth="50" 
             Binding="{Binding NoPiece}" 
             IsReadOnly="False"/> 
    </dg:DataGrid.Columns> 
</dg:DataGrid> 

我只是有这个的数据网格中,我想编辑其内容,并在开始的时候是空的。

+0

您的'ItemsSource'设置为ObservableCollection ? – 2009-09-14 22:24:33

+0

目前,我没有ItemSource(可能是问题...) 在这个程序中,我通常会将itemSource放置为List(Of Something),但如果我需要放置其他东西,那么所有的意思我会。 – 2009-09-15 12:15:40

+0

也许我做得不对。我想要做的是与正常的Windows窗体应用程序具有相同的功能。这意味着有一个数据网格,其中一个'新行'总是可见的,我可以在其中添加数据。我也想删除一行。 – 2009-09-15 13:05:14

回答

7

它可能是许多事情中的任何一个。请看看this article

问题很可能是您绑定到不支持添加项目的集合视图。我相信网格可能期望收集视图实现IEditableCollectionView或,支持添加项目的接口。

1

CanUserAddRows是正确的属性。也许分享一些示例代码。

相关问题