ようこそ、こちらはライセンスフリーの.NET WindowsFormsControl「FlickGrid」を紹介するページです。
まだバグもあるかもしれませんが、今後も修正と拡張を続けますのでよろしくお願い致します。

Description in English is here.

現在、GUI操作でのデータ入力機能のない、Read-Only α版を公開しています。
コード上からのセルへの値設定のみ可能でグリッドへの直接編集は出来ません。
このグリッドに起因するいかなる損害に対しても当方は一切責任を負いませんが、
私用、商用、自由にお使い下さい。当方への連絡も一切必要ありません。

今後のバージョンアップで、バグ修正と、編集入力可能版を含めた色々な機能を盛り込む予定です。
編集入力可能版は有償にする予定ですが、Read-Only版は無償提供致します。

質問等はBbsへお願い致します。

 

グリッドの動作サンプルは以下です。(※画面は version1_2のものです。)
(※ Microsoft .NET Framework Version 4.5 が必要です。)

FlickGrid_Sample1_3.zip (FlickGrid_Sample.exe)
 

グリッドコントロール(.NET DLL)は以下です。
(※ Microsoft .NET Framework Version 4.5 が必要です。)

FlickGrid1_3_2.Zip (FlickGrid.Dll)


以下は機能諸元です。
※今後も拡張する予定です。

●プロパティ
FlickScroll......................フリック操作でのスクロール
ScrollBar........................スクロールバー
CellStyleOrder...................スタイル適用モード
DefaultStyle※...................スタイル規定値
GridBackColor....................グリッド背景色
SelectedMode.....................セル選択モード
SelectedCellBackColor............選択セル背景色
SelectedCellForeColor............選択セル前景色
SelectedCells....................セル選択情報
  Cells........................セル選択アドレス情報
  LeftTopAddress...............選択セル中の最左上アドレス
  RightBottomAddress...........選択セル中の最右下アドレス
ActiveCellMode...................アクティブセル表示
ActiveCellAddress................アクティブセル位置
Row..............................アクティブセル行位置
Col..............................アクティブセル列位置
Rows.............................行情報
  MostIndex....................現在の左上行位置
  DefaultHeight................行サイズ規定値
  MaxIndex.....................行配列数
  HeaderBottomRowIndex.........ヘッダ行配列数
  HeaderHeight.................ヘッダ領域の高さ
  AutoAddCount.................自動追加数
  AutoAddMaxIndex..............自動追加最大配列数
  Rows(RowIndex)...............行コレクション
    Style※..................スタイル
    Tag......................タグ
    Visible..................行表示
    Index....................配列位置
    Height...................行高さ
    ●メソッド
    ◇コンテンツを初期化します。
    Clean()
  ●メソッド
  ◇コンテンツを初期化します。
  Clean()
  ◇行を削除します。
  Remove(Row As Integer)
  ◇行を挿入します。
  Insert(Row As Integer)

Cols.............................列情報
  MostIndex....................現在の左上列位置
  DefaultWidth.................列サイズ規定値
  MaxIndex.....................列配列数
  HHeaderRightColIndex.........ヘッダ列配列数
  HeaderWidth..................ヘッダ領域の幅
  AutoAddCount.................自動追加数
  AutoAddMaxIndex..............自動追加最大配列数
  Cols(ColIndex)...............列コレクション
    Style※..................スタイル
    Tag......................タグ
    Visible..................列表示
    Index....................配列位置
    Width....................列幅
    ●メソッド
    ◇コンテンツを初期化します。
    Clean()
  ●メソッド
  ◇コンテンツを初期化します。
  Clean()
  ◇列を削除します。
  Remove(Col As Integer)
  ◇列を挿入します。
  Insert(Col As Integer)

Cells............................セル情報
  ForeImageTranceparentColor...前景イメージ透過色
  BorderColorVertical..........セル垂直境界線色
  BorderColorHorizontal........セル水平境界線色
  BorderColorVerticalHead......見出し水平境界線色
  BorderColorHorizontalHead....見出し水平境界線色
  Padding......................セル四隅余白
  Cells(RowIndex,ColIndex).....セルコレクション
    Style※..................スタイル
    Tag......................タグ
    Visible..................セル表示
    Address※................セル配列位置
    DataText.................表示値
    DataValue................内部値
    Checked..................チェック値
    ForeImage................前景イメージ
    BackImage................背景イメージ
    MergeSize................結合情報
    ●メソッド
    ◇コンテンツを初期化します。
    Clean()
  ●メソッド
  ◇コンテンツを初期化します。
  Clean()

●メソッド
◇描画処理をロックします。
SuspendLayout()

◇ロックした描画処理を解除します。
ResumeLayout()

◇行列を削除します。
Clear()

◇コンテンツを初期化します。
Clean()

◇結合情報を取得します。
GetMergeInfo(Row As Integer, Col As Integer) As Address

◇結合情報を行列の起点からの相対値指定で追加します。
AddMergeFromDiff(TopRow As Integer, LeftCol As Integer, DiffRow As Integer, DiffCol As Integer, Optional MergePriority As enmMergePriority = enmMergePriority.Full)

◇結合情報を行列の左上から右下絶対値指定で追加します。
AddMergeFromTo(TopRow As Integer, LeftCol As Integer, BottomRow As Integer, RightCol As Integer, Optional MergePriority As enmMergePriority = enmMergePriority.Full)

◇起点から相対値までの領域に存在する全ての結合情報(子セルの場合はその親セルの他の子セルも含めて)を全て解除します。
DelMergeFromDiff(TopRow As Integer, LeftCol As Integer, DiffRow As Integer, DiffCol As Integer)

◇行列の左上から右下絶対値までの領域に存在する全ての結合情報(子セルの場合はその親セルの他の子セルも含めて)を全て解除します。
DelMergeFromTo(TopRow As Integer, LeftCol As Integer, BottomRow As Integer, RightCol As Integer)

◇DataTable又はCollectionBase型の内容をグリッドに値コピーして表示します。
SetDataSource()

◇グリッドデータの検索(行方向複数列)
FindRow(ColIndexs As Integer() _
, Values As Object() _
, Optional StartRowIndex As Integer = -1 _
, Optional DataTextModes As Boolean() = Nothing _
, Optional UnMatchModes As Boolean() = Nothing) As Integer

◇グリッドデータの検索(行方向)
FindRow(ColIndex As Integer _
, Value As Object _
, Optional StartRowIndex As Integer = -1 _
, Optional DataTextMode As Boolean = False _
, Optional UnMatchMode As Boolean = False) As Integer

◇グリッドデータの検索(列方向複数行)
FindCol(RowIndexs As Integer() _
, Values As Object() _
, Optional StartColIndex As Integer = -1 _
, Optional DataTextModes As Boolean() = Nothing _
, Optional UnMatchModes As Boolean() = Nothing) As Integer

◇グリッドデータの検索(列方向)
FindCol(RowIndex As Integer _
, Value As Object _
, Optional StartColIndex As Integer = -1 _
, Optional DataTextMode As Boolean = False _
, Optional UnMatchMode As Boolean = False) As Integer

◇グリッドデータの検索(行列)
FindRowCol(Value As Object _
, Optional StartRowIndex As Integer = -1 _
, Optional StartColIndex As Integer = -1 _
, Optional DataTextMode As Boolean = False _
, Optional UnMatchMode As Boolean = False) As Point

◇グリッドデータの検索(列行)
FindColRow(Value As Object _
, Optional StartRowIndex As Integer = -1 _
, Optional StartColIndex As Integer = -1 _
, Optional DataTextMode As Boolean = False _
, Optional UnMatchMode As Boolean = False) As Point

※Style..........................スタイル
  TextAlign....................テキスト位置
  ImageAlign...................前景イメージ位置
  ForeColor....................前景色
  BackColor....................背景色
  BackColor2...................背景色(グラデーション用)
  GraphColor...................グラフ色
  GraphDirection...............グラフ方向
  BackColorMode................グラデーション方向
  ForeTxtImgWrap...............前景イメージテキスト配置方法
  BackImgLayout................背景イメージ配置方法
  BackImgBorder................背景イメージ枠線
  BackImgBorderColor...........背景イメージ配置枠線色
  GraphColor...................グラフ色

  ●メソッド
  ◇スタイルをクローンコピーします。
  CopyTo(Style As Style)

Address※........................セル配列位置
  Row..........................行配列位置
  Col..........................列配列位置


●イベント

◇セルをクリックした時
CellMouceClick(sender As Object, e As RowColEventArgs)

◇行列数が変更された時
RowColMaxIndexChange(sender As Object, e As RowColEventArgs)

◇行列サイズをマウス操作で変更した時
RowColResize(sender As Object, e As RowColEventArgs)

◇セルデータ変更時
CellDataValueChange(sender As Object, e As RowColEventArgs)

◇アクティブ/選択セル変更時
SelectCellChange(sender As Object, e As RowColEventArgs)

◇行列自動追加時
CellAutoAdd(ByVal sender As Object, ByVal e As FlickGridEventArgs)

◇行列自動削除時
CellAutoRemove(ByVal sender As Object,ByVal e As FlickGridEventArgs)


更新履歴
2016-03-11 Version 1.3.2
・DataSourceにCollection型を設定するとエラーになる問題を修正
・スクロールバーを表示した状態でコントロールをリサイズした時に右下が正しく描画されない場合がある問題を修正
・StyleクラスにGraphDirectionプロパティを追加し、セル内の上下左右どこからでもグラフ起点に出来るよう対応。
2014-12-22 Version 1.3.1
・指定しても無視されるか、背景枠線スタイルが適用される問題を背景配置スタイルを修正
・Row(Col)s.MaxIndexに明細行以上の値を設定後、Grd.Row(Col)明細データが0行からに設定してもセルの見た目が選択状態にならなかった問題を修正
明細行以上の値を・モードで明細行又は明細列数が0の場合にフリック操作を行うと例外が行列自動追加発生を修正
する問題・チェックボックスの外枠の描画Y座標位置を1ドット下に修正。
2014-05-28 Version 1.3
・親コンテナのVisible=True時に、グリッドが描画されなかった問題を修正
・マウスダウンによるセル選択時に発生するSelectCellChangeイベント内でMsgBox表示等によりグリッドのフォーカスが失われた場合、グリッド上でマウスをセルクリックしていないのにその動きに追従してアクティブセルが移動する問題を修正
・スクロールバーの表示位置がずれる問題を修正
・セルデータの検索メソッドの追加
2014-04-09 Version 1.2.2

・StyleクラスにBackImgBorder、BackImgBorderColorプロパティを追加
・画面のフォントサイズを変更するとグリッドのサイズが変わってしまう問題を修正
・背景イメージをセルに合わせて拡縮表示時に下部分の一部が欠ける問題を修正
・選択モードが行/列の時に有効セル以外をマウスクリックした場合の選択セル描画がおかしくなるバグを修正
・行/列自動追加時、CellAutoAdd/CellAutoRemoveイベントに設定する引数の値を変更
・実行時にFlickGrid.Col/Rowの値がインデックスの最大値を超える例外バグを修正

2014-02-21 Version 1.2.1

・Rowsクラス、ColsクラスにAutoAddMaxIndexプロパティを追加、関連イベント:CellAutoRemoveを追加しました。
AutoAddCountによる自動行列追加時、この値を超えた配列数になる場合は超過行列を自動で削除します。
・主にフリック操作時のバグ修正

2014-02-20 Version 1.2

・Rowsクラス、ColsクラスにAutoAddCountプロパティを追加、関連イベント:CellAutoAddを追加しました。
先頭行/列より前、または最終行/列より後を表示しようとするようなGUI操作時、自動で行列の新規挿入/追加を行い、無限スクロール処理を可能にします。
・主にフリック操作時のバグ修正

2014-01-06 Version 1.1.1

・プルダウンコントロールまたはアップダウンコントロールを設定したセルの行高さを0にすると例外が発生する問題を修正

2014-01-06 Version 1.1

・スタイルクラスにグラフ色プロパティ(.GraphColor)を追加しました。
黒以外の色を設定すると、イメージ配置方向に連動したセル内簡易グラフモードになり、内部値"1"〜"100"の%値に対応した棒グラフを表示します。

2013-12-24 Version 1.0

・初版を公開しました。

 

サンプルコードはこちらです。


アクセスカウンター
旅とも洋画DVD通販カラコンライフブランド買取

Copyright (C) XebecSoftWare 2013