- - PR -
スプレッドのコンボボックス型セルにデータバインドさせる方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-03-26 10:28
Dim cbstr As String() cbstr = New String(){"Jan", "Feb", "Mar", "Apr", "May", "Jun"} Dim cmbocell As New FarPoint.Win.Spread.CellType.ComboBoxCellType() cmbocell.Items = cbstr FpSpread1.activeSheets.cells(1,1).celltype = cmbocell こうすると、スプレッドの(1.1)のセルに上記コンボボックスが入るのですが、 上記の配列変数に直書するのではなく、データセットの値をデータバインドさせたいのですが、どなたかご存知の方、ご教授お願いします。 cmbocell.datasouce= DataSet.table("mst_table") cmbocell.item= "mst_Item" cmbocell.Itemdata = "mst_ItemKbn" のような形で、DBからデータをバインドさせて、それを上記のように 列単位でとっていくのがベストなんですが。。。 今はスプレッド3.0を使っています。 2.5にはDBからデータバインドさせる機能はありませんと書いてありましたが、 3.0ではできるのではないでしょうか? |
|
投稿日時: 2008-03-26 11:07
追記:
最終的に何がしたいかというと、スプレッドの中で、コンボボックスを作って表示させる。ただ表示させるだけではなくて、表示値と内部値に分けて値を取得する。ということです。、そのコンボボックスの中の要素は、直書するのではなく、DBから取得して表示させる方法にしたいのです。 ヘルプを読むと、要素として表示させたい値を配列変数に値を入れて、その配列変数をITEMSで取得して、そのコンボボックス型オブジェクトをセルの中に入れるという形をとっていますが、直書はできません。 最悪、1件1件データセットから取得した項目を配列変数に代入して、それをコンボボックス型オブジェクト.ITEMSで取得させそのオブジェクトをコンボボックス型セルに挿入しようかと考えております。 |
|
投稿日時: 2008-03-26 13:02
データバインドされたデータソースのフィールドを指定するためのプロパティがあるはずですので、ItemやItemdataプロパティの代わりにそれらを使えばよいと思います。
Web版ではDataTextFieldやDataValueFieldというプロパティだったはずですが、Win版のほうはわかりません。ドキュメントを確認してみてください。 (たぶん同じだと思いますが) |
1