- - PR -
DataGridの行選択方法について
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-06-06 19:05
選択されたDataGridItemに対して、
Label LblCode = (Label)item.FindControl( "LblCode" ); で、ラベルコントロールが取れると思います。 C#のコードですみません。 私はVB.NETの経験がほとんど無いので、 |
|
投稿日時: 2003-06-06 20:20
仕様書無しさん、GUNNMさんありがとうございます。
試したところ以下のようになりました。 >仕様書無しさん Label2 = DGList.Items(DGList.SelectedItem.ItemIndex).Cells(1).Controls(0).text 'text' は 'System.Web.UI.Control' のメンバではありません。 で、実行できませんでした。 >GUNNMさん、自分なりにVBで書いてみたところ Dim tmpLabel As Label tmpLabel = DGList.FindControl("LblCode") Label2.Text = tmpLabel.Text 例外の詳細: System.NullReferenceException: オブジェクト参照がオブジェクト インスタンスに設定されていません。 と行選択時にエラーが出ます。 で、いろいろ試した結果以下のコードで値が取得できました。 Dim tmpLabel As Label tmpLabel = DGList.Items(DGList.SelectedItem.ItemIndex).Cells(1).FindControl("LblCode") Label2.Text = tmpLabel.Text うまくいったのですが、上の2つのコードがなぜエラーになるのかこれから勉強してみます。 ありがとうございました。 |
|
投稿日時: 2003-06-22 12:46
VB.NETを使い始めました。
ぬるぴょんさんの以下の書き込みのとおりにやろうとするのですが、 Prerenderがないと、怒られます。DGListはDATAGRIDの名前ですか? もうすこし、詳しく教えていただけませんか。 よろしくお願いします。 > Private Sub DGList_PreRender(ByVal sender As Object, ByVal e As > System.EventArgs) Handles DGList.PreRender |
|
投稿日時: 2003-06-27 16:40
matsuさん、こんにちは
PreRenderはデータグリッドのイベントなので VisualStudioをお使いであれば、コードエディタ画面の左上の オブジェクト選択コンボボックスからデータグリッド名を選択し、 右上のイベント選択コンボボックスからPreRenderを選択していけば 自動的に作成されると思います。 |