C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: サーバーエクスプローラーのテーブルに項目を追加したい


(過去ログ 139 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■81970 / inTopicNo.1)  サーバーエクスプローラーのテーブルに項目を追加したい
  
□投稿者/ VB初心者 (18回)-(2016/11/25(Fri) 18:54:37)

分類:[VB.NET/VB2005 以降] 

Visual Studio 2015 プログラム言語はVB

テーブルの項目にID、氏名、撮影日、体重の項目をつくり、複数の人物のデータを入力し、DataGridViewで表示した。そのあと、身長の項目をテーブル定義に追加し、並び変えの機能で撮影日と体重の間に入れたいのですが、身長の項目の追加はできても並び変えができません。どうすればできるんでしょうか?

また、身長の項目はデータソースでは更新されず、DataGridViewにも身長の項目が追加されません。原因に心当たりがある人は教えてください。

わかりにくかったらすいません。
引用返信 編集キー/
■81971 / inTopicNo.2)  Re[1]: サーバーエクスプローラーのテーブルに項目を追加したい
□投稿者/ 魔界の仮面弁士 (991回)-(2016/11/25(Fri) 19:56:38)
No81970 (VB初心者 さん) に返信
> テーブルの項目にID、氏名、撮影日、体重の項目をつくり、
データベースのテーブルに項目を追加したのでしょうか。
それとも、VB 側の DataTable に項目を追加したのでしょうか。
あるいはその両方?

> 並び変えの機能で撮影日と体重の間に入れたいのですが、

行の並び順(ORDER BY 的な)ではなく、
列の順番を入れ替えるということですよね。

それは、データソースそのものを修正したいということでしょうか。
それとも DataTable 上の列順だけを変更したいのでしょうか。
あるいは DataGridView の列順さえ変更できれば良いのでしょうか。
もしくは、ユーザーのドラッグ操作で列の位置を変更したいのでしょうか。

DataTable 側の話なら、型付きDataSetならデザイナで修正できますし、
コードだったら、Columns.Add する順番を変更すれば済みます。
DataAdatper / TableAdapter からの取得結果なら、SQL 自体を見直せば OK。
DataGridView 側なら、デザイン時にあらかじめ修正しておくか、
実行時に新列を .Columns.Insert で挿入したり、既存列の DisplayIndex を修正したり。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=22353&KLOG=42
ユーザー操作で入れ替えたいという話なら、AllowUserToOrderColumns = True です。


> また、身長の項目はデータソースでは更新されず、DataGridViewにも身長の項目が追加されません。
操作が間違っているか、確認方法に問題があるかのどちらかだとは思いますが、
質問内容からでは、何を行ったのかが曖昧なので、判断に迷うところです。

[身長の項目をテーブル定義に追加]というのは、
具体的にどのような操作をしたときの事を仰っていますか?

「データベース上の定義」と「型付DataSet上の定義」と「DataGridViewに表示される内容」は
それぞれ独立しており、一部の定義が変更された場合の情報の同期は、開発者の側で
調整する必要があります。ですから、実際に行った作業手順を明確にしていただくことで、
対処方法を提示することができるかと思います。


> 原因に心当たりがある人は教えてください。
状況がいまひとつハッキリしない上に、データソースが何であるかも
分かりませんが、たとえば SQL Server の mdf を用いていた場合、
[出力ディレクトリにコピー]の設定で、変更結果が戻ってしまうことがあります。
http://www.atmarkit.co.jp/fdotnet/dotnettips/532dbfilecopy/dbfilecopy.html
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -