Visualbasic2010 WPF データ更新
VisualBasic 2010 を利用してWindowsアプリケーションを行っております。
Form上にElementHostを配置し、データベースより抽出した結果をWPFで作成したグリッド(DataGrid)に表示しております。
以下の点について分る方がいらっしゃいましたらご教授頂けますと幸いです。
DataGridでデータを更新した場合にDataTableも更新したい
ソースは以下の構成となります。
★Item_Main.xaml
<UserControl x:Name="UserControl1" x:Class="Item_Main"
xmlns:local="clr-namespace:TEST"
mc:Ignorable="d"
d:DesignHeight="200" d:DesignWidth="300" Height="Auto" Width="Auto" GotFocus="UserControl_GotFocus">
<DataGrid x:Name="DataGrid_1" ItemsSource="{Binding}" ScrollViewer.CanContentScroll="True" VirtualizingPanel.IsVirtualizing="True" VirtualizingPanel.VirtualizationMode="Standard" ScrollViewer.IsDeferredScrollingEnabled="True" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" HeadersVisibility="None" Margin="0,0,0,0">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<local:Item_Detail />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</UserControl>
★Item_Detail.xaml
<UserControl x:Name="UserControl2" x:Class="Item_Detail"
mc:Ignorable="d"
d:DesignHeight="136" Width="1090" Loaded="UserControl_Loaded">
<UserControl.Background>
<SolidColorBrush Color="{DynamicResource {x:Static SystemColors.WindowColorKey}}"/>
</UserControl.Background>
<Grid Name="GP_Panel" KeyboardNavigation.TabNavigation="Local">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="69*"/>
<ColumnDefinition Width="151*"/>
</Grid.ColumnDefinitions>
<TextBox x:Name="Text_Pre_CS" Text="{Binding 数量, Mode=TwoWay, TargetNullValue=0}" HorizontalAlignment="Left" Height="22" Margin="161,102,0,12" TextWrapping="Wrap" Width="60" Background="White" FontFamily="Arial" HorizontalContentAlignment="Right" VerticalContentAlignment="Center" FontWeight="Bold" Foreground="Black" Grid.Column="1" TabIndex="1" FontSize="15" />
</Grid>
</UserControl>
★Item_Detail.xaml.vb
※現在はデータ編集時に以下のように処理しております。
'/ 本画面のDataRowを取得
Dim dt_row As DataRow
Dim dt_row_view As DataRowView
dt_row_view = CType(Me.DataContext, DataRowView)
dt_row = dt_row_view.Row
dt_row.Item("数量") = "0"
DataRowはDataTableとは異なると認識しておりますので
現在のロジックではDataTable側は更新されない事は
理解しているのですが、Item_Detail.xaml.vbにて
DataTableの特定行数を取得する方法等が分らず
目的の動作が実現できていません。
大変お手数おかけ致しますが、
宜しくお願い致します。
以上です。