DOBON.NETプログラミング道掲示板

ツリー一括表示

Nomalアイコン Datagridviewのクリア /さだきち (19/03/15(Fri) 22:53) #34193
Nomalアイコン Re[1]: Datagridviewのクリア /魔界の仮面弁士 (19/03/18(Mon) 10:20) #34194
  └Nomalアイコン Re[2]: Datagridviewのクリア /さだきち (19/03/22(Fri) 14:42) #34198 解決み!


親記事 / ▼[ 34194 ]
■34193 / 親階層)  Datagridviewのクリア
□投稿者/ さだきち 一般人(1回)-(2019/03/15(Fri) 22:53:03)
  • アイコン環境/言語:[VB.NET] 
    分類:[.NET] 

    Datagridviewにdatatableをバインドしています。

    内容をクリアするとき
    Datatable.rows.clearするか
    New datatableで新たにテーブルを作成してバインドするか
    どちらのほうが良いでしょうか?

    今見ている仕組みはどちらも混在してるのですが
    前任者がいないためどう使い分けてるのか不明の状態です。
    (使い分けに理由がない可能性もあります)
違反を報告
[ □ Tree ] 返信 削除キー/

▲[ 34193 ] / ▼[ 34198 ]
■34194 / 1階層)  Re[1]: Datagridviewのクリア
□投稿者/ 魔界の仮面弁士 大御所(1219回)-(2019/03/18(Mon) 10:20:28)
  • アイコンNo34193に返信(さだきちさんの記事)
    > 内容をクリアするとき
    > Datatable.rows.clearするか
    > New datatableで新たにテーブルを作成してバインドするか
    > どちらのほうが良いでしょうか?

    「何のためにクリアするのか」にもよると思います。

    DataGridView1.AutoGenerationColumn が True/False のいずれなのかとか、
    非バインド列の有無によっても変わってきそうですし、
    まるっきり別の構造のテーブルを割り当てる場合は、
    .Rows.Clear() では十分では無いでしょう。

    列定義が変わるわけでは無いのだとしたら、
    自分ならば、New DataTable() を割り当てなおすことはしないですね。
    DataTable1.Clear() あるいは
    DataTable1.Rows.Clear() にします。

    # .Clear と .Rows.Clear は、.NET 1.x では同じ意味でしたが、
    # .NET 2.0 以降は微妙に実装が異なっています。


    要件によっては、BindingSource で Type を渡すようにするとか、
    DataView でフィルターを変えて見えなくするという事もあるかも。
違反を報告
[ 親 34193 / □ Tree ] 返信 削除キー/

▲[ 34194 ] / 返信無し
■34198 / 2階層)  Re[2]: Datagridviewのクリア
□投稿者/ さだきち 一般人(2回)-(2019/03/22(Fri) 14:42:28)
  • アイコンNo34194に返信(魔界の仮面弁士さんの記事)

    魔界の仮面弁士さま、お返事ありがとうございます。

    改めてソースを見てみると、
    データの内容のみをクリアしているようですが、
    両方の方法が混在しているようです。
    (DataGridViewの書式は保持、非バインド列もなし)

    今後新規で作成する場合は、
    原則clearする方向で検討しようと思います。
    ありがとうございました。


解決み!
違反を報告
[ 親 34193 / □ Tree ] 返信 削除キー/


Mode/  Pass/


- Child Tree -