- PR -

DataGridテンプレート列に配置したTextBoxへの値の挿入

1
投稿者投稿内容
たかひろ
会議室デビュー日: 2002/08/06
投稿数: 8
投稿日時: 2002-09-03 11:37
こんにちは。

DataGridテンプレート列にテキストボックスを配置しました。
そのテキストボックスに初期値を動的に設定したいのですが
可能でしょうか?

値を取得する方法まではわかったのですが・・・
設定はできないのでしょうか?
うりゅう
大ベテラン
会議室デビュー日: 2002/06/15
投稿数: 202
お住まい・勤務地: Hiroshima
投稿日時: 2002-09-06 22:55
こんにちわです。遅い返答です(笑)

強引な方法でよければ可能です。

1.普通にデータバインディングをする(この段階ではテキストボックス内は空です)
2.表示されているデータグリッドの行数でループを回して、一行ずつ格納していく。
3.ページングをやっているなら、その都度の処理を行い、データベースから読み出す行を動的に変更する。

わかりにくいようでしたら、ソースを上げます。
_________________
--------------------------------------
ネットビルド 小田原貴樹
odahara@netbuiuld.jp
--------------------------------------
たかひろ
会議室デビュー日: 2002/08/06
投稿数: 8
投稿日時: 2002-09-09 16:02
ぜひお願いします!

データバインドする方法は成功したのですが
本当は1行ずつ任意の値を設定したいのです。

TextBoxに入力した値を取得する場合は

-------------------------------------------------------------------------
Dim TextBOX1 as TextBox = CType(DataGrid1.Items(i).Cells(2).FindControl("TextBox1"), TextBox)

Dim TextStr as String = TextBOX1.Text
-------------------------------------------------------------------------

といった感じで取得できますよね?

この逆がわからないのです。
DataGrid内のテキストボックスコントロールを捕まえて
値を設定したいのですが・・・


是非ともソースを上げて下さい!

よろしくお願いします。
うりゅう
大ベテラン
会議室デビュー日: 2002/06/15
投稿数: 202
お住まい・勤務地: Hiroshima
投稿日時: 2002-09-14 23:12
お返事遅くなりました。あまりいいサンプルじゃないですけど、参考になれば幸いです。
---------------------------------------------------------------------------
'売上情報一覧表中格納メソッド
Public Sub Uvview(ByVal dgrid As DataGrid,ByVal ipot As Integer)

Dim Umset As New UmeiSet()
Dim Umview As New DataView()
dc.FDUmei(Umset)
Umview.Table = Umset.売上明細

For Each item In dgrid.Items
Dim UDID As String = dgrid.DataKeys(Item.ItemIndex).ToString()
Dim I As Integer
Dim UDSUM As Integer = 0
Umview.RowFilter = "売上伝票ID = " & UDID & ""
If Not Umview.Count = 0 Then
For I = 0 To Umview.Count - 1
UDSUM = UDSUM + Umview(I)("金額")
Next
Else
UDSUM = 0
End If
item.Cells(ipot).text = UDSUM.ToString("C")
Next
End Sub
----------------------------------------------------------------
 売上げ伝票を一覧表示するデータグリッド内に、合計金額を格納するテキストボックスをテンプレート列として作成していて、その中に売上げ明細の各金額を集計したものを格納するメソッドのサンプルです。

 かなり力業ですのでスマートではないですが、データグリッドの各アイテムをFor Eachで最後まで処理するというやり方は汎用性が高いと思われます。
 
 コード内で不明な点があれば質問してください。
_________________
--------------------------------------
ネットビルド 小田原貴樹
odahara@netbuiuld.jp
--------------------------------------
1

スキルアップ/キャリアアップ(JOB@IT)