DataForm と DataGrid を DomainDataSource にバインドし、アイテムの追加、削除、編集の機能を実装しようとしています。
DataForm 部分では、すべてが非常にうまく機能します。しかし、DataGrid を使用して新しいレコードを追加するにはどうすればよいでしょうか? 私が今まで知っているように、2 つの作業オプションがあります。
新しい「空白」項目を DataView に追加します。
- 問題: 重要な要件と制約の結果として検証エラーが発生します。
Silverlight 4 サービス リリース (2010 年 9 月) の「SDK 機能を使用して、DataGrid コントロールで新しい行の追加機能を有効にする」
- 問題: 正確には何が変わったのですか? 新しいメンバーやドキュメントはありません。
私のプロジェクトの最も重要な部分に一致するいくつかの基本的なマークアップ宣言を次に示します。
<Grid x:Name="LayoutRoot">
<sdk:DataGrid x:Name="ParentGrid" AutoGenerateColumns="False" ItemsSource="{Binding ElementName=parentDomainDataSource, Path=Data}"/>
<toolkit:DataForm x:Name="ParentForm" CommandButtonsVisibility="All" Grid.Row="1" ItemsSource="{Binding ElementName=parentDomainDataSource, Path=Data}"/>
<sdk:DataGrid x:Name="ChildGrid" Grid.Column="1" AutoGenerateColumns="False" ItemsSource="{Binding ElementName=childDomainDataSource, Path=Data}"/>
<toolkit:DataForm x:Name="ChildForm" CommandButtonsVisibility="All" ItemsSource="{Binding ElementName=childDomainDataSource, Path=Data}"/>
<riaControls:DomainDataSource AutoLoad="True" d:DesignData="{d:DesignInstance my1:Child, CreateList=true}" Name="childDomainDataSource" QueryName="GetChildrenQuery"
DomainContext="{StaticResource domainCtx}"/>
</riaControls:DomainDataSource>
<riaControls:DomainDataSource AutoLoad="True" d:DesignData="{d:DesignInstance my1:Parent, CreateList=true}" Name="parentDomainDataSource" QueryName="GetParentsQuery"
DomainContext="{StaticResource domainCtx}"/>
</Grid>
残念ながら、もう時間がありません。
助けてくれてありがとう。ドイツからよろしく。誰かが助けてくれることを願っています;)