About VB.NET

ブログ「三流覚え書き」のカテゴリ「VB.NET」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリはsanryuです。

次のカテゴリはwebです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35

メイン

VB.NET アーカイブ

2009年05月15日

datagridviewでヘッダ右クリックメニューで枠固定

1.データグリットビューでヘッダを右クリックする。
 ※CellContextMenuStripNeededイベント使用。
2.メニューが表示される。
 [枠固定] :枠を固定する。
 [枠解除] :枠固定を解除する。

Private mFrozenColumnIndex As Integer

'ヘッダ右クリックでメニュー表示
Private Sub dgv_CellContextMenuStripNeeded(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellContextMenuStripNeededEventArgs) Handles dgv.CellContextMenuStripNeeded
If e.RowIndex < 0 Then
e.ContextMenuStrip = ContextMenuStrip1
mFrozenColumnIndex = e.ColumnIndex
End If
End Sub

'データグリッドビューのヘッダの固定
Private Sub 枠固定ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 枠固定ToolStripMenuItem.Click

  ’枠固定解除
UnFrozen()
’指定列枠固定
dgv.Columns(mFrozenColumnIndex).Frozen = True

End Sub

'枠固定解除実行
Private Sub 枠解除ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 枠解除ToolStripMenuItem.Click
UnFrozen()
End Sub

'枠固定解除
Private Sub UnFrozen()
With dgv
For i As Integer = 0 To .Columns.Count - 1
.Columns(i).Frozen = False
Next
End With
End Sub

2009年05月24日

DatagridViewとSPREAD FOR .NET どっちでつくる。

VB.NET 2005で作るつもり。
自身 VB.NET 2005 は初めて・・・・・。
ユーザーは現在EXCELでデータ管理をしている。
打合せで、よく言われるのが、EXCLEみたいなコピペがしたい。

適当に調べた結果。

判例 : ×はプログラムしないとだめ。
      △はややプログラムが必要。
      ○標準で機能有

※評価基準は、VB.NETは5年前に一度(5日ぐらい)やった 自分の主観で。
 

------------------------------------------
項目 | DataGridView    | SPREAD
-----------------------------------------
フィルタ   |    ×     |  ○
-----------------------------------------
  ソート    |    ○       |  ○     ※複数指定はどちらも△
-----------------------------------------
 枠固定    |    ○       |  ○     ※SPREADの方が協力
-----------------------------------------
 常時編集  |    ○       |   ○
-----------------------------------------

(コピペ)
 選択したセル(1つ)の内容をコピーして、同じ列に貼り付けするには
 どちらもプログラムが必要。しかし、 DataGridViewは常時編集モードで
 実装可能だが、SPREADは常時選択モードで他のセルを選択できない・・・・。
 ※でも実装できると思う。

(評価結果)
 【DataGridView】
 DataGridViewは、何かをやろうとするといちいち面倒くさい感じ。
 DataSet、DataGridView、TableAdapter、BindingSource、BindingNavigatorなどを使用して
 利用すると結構複雑、簡単にできると思った事がなかなかできない。
 例えば、更新後の背景色を変えて、フィルタをかけたら背景色が元に戻っていた。

 【SPREAD FOR .NET】
 お高いだけあった、ヘルプも親切、直感的にできそうな気がする。
 常時編集モードで範囲選択できない事だけが気になる。
 あと、AutoGenerateColumns = Tureでバインドするとがんばって作ったスタイル
 設定が反映されない・・・・・・。

 【総評】
 会社が買ってくれるなら「SPREAD FOR .NET」を使う。
 月曜日、上司に頼んでみる。

2009年06月
Sun Mon Tue Wed Thu Fri Sat
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30