いつものように、少し調べてみましたが、サイトや他の場所で答えを見つけることができませんでした. 既存の質問を指摘していただければ幸いです。それ以外の場合は、次の質問があります。
オブジェクトにListView
オブジェクトをバインドしていDataTable
ます。以下の定義を参照してください。
<ListView Name="MyList">
<ListView.View>
<GridView>
<GridViewColumn x:Name="Column1Name" DisplayMemberBinding="{Binding Path=Column1}" />
<GridViewColumn x:Name="Column2Name" DisplayMemberBinding="{Binding Path=Column2}" />
<GridViewColumn x:Name="Column3Name" DisplayMemberBinding="{Binding Path=Column3}" />
<GridViewColumn x:Name="Column4Name" DisplayMemberBinding="{Binding Path=Column4}" />
</GridView>
</ListView.View>
</ListView>
バインディング コードは次のとおりです。
DataTable items = new DataTable();
items = DatabaseService.GetMyItems(20, true, items);
Binding binding = new Binding();
binding.Source = items.DefaultView;
binding.Mode = BindingMode.OneWay;
MyList.SetBinding(ListView.ItemsSourceProperty, binding);
クエリを実行する実際のコードは次のとおりです。
/** Parameters: commandText = <sql>, table = items */
using (DbConnection connection = new SqlConnection(Project.Properties.Settings.Default.ConnectionString))
{
using (DbCommand command = connection.CreateCommand())
{
command.CommandText = commandText;
command.CommandType = CommandType.Text;
using (DbDataAdapter dataAdapter = new SqlDataAdapter())
{
dataAdapter.SelectCommand = command;
dataAdapter.Fill(table);
}
}
}
このコードは初めて機能しGetMyItems
ますが、データが変更された後にメソッドを再度呼び出すと、データが更新されません。
私は何を間違っていますか?