C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[8]: GridView使用で・・・


(過去ログ 22 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■9105 / inTopicNo.1)  GridView使用で・・・
  
□投稿者/ あく (3回)-(2007/10/18(Thu) 21:07:40)

分類:[ASP.NET (C#)] 

ASP.NET C# WEBアプリケーション開発です。

GridViewを使用しテンプレートで中にドロップダウンリストを入れました。
データベースから値を取り出した後、ドロップダウンリストのvalueとitemとIDを決めた後GridViewに表示したいんですが、
どのようにセットすればいいのか分かりません。

GridView ID gridtest
DropDownList ID droptest
だとすると
gridtest.FindControl("droptest")なんとかで
セットできるんでしょうか??

お願いいたします。
引用返信 編集キー/
■9136 / inTopicNo.2)  Re[1]: GridView使用で・・・
□投稿者/ あく (4回)-(2007/10/19(Fri) 16:44:48)
いまだ解決いたしません。
TemplateField にドロップダウンをいれているのでそこらへんかと
MSDNで調べているのですがわかりません。
引用返信 編集キー/
■9139 / inTopicNo.3)  Re[2]: GridView使用で・・・
□投稿者/ いしだ (47回)-(2007/10/19(Fri) 17:12:41)
2007/10/19(Fri) 17:13:16 編集(投稿者)

こんにちは。

DropDownListのDataSourceにデータベースからの値を設定してはどうでしょうか。

又は、

GridViewのRowDataBoundイベント等で、
1つ1つ設定していくか、ですね。

引用返信 編集キー/
■9143 / inTopicNo.4)  Re[3]: GridView使用で・・・
□投稿者/ あく (5回)-(2007/10/19(Fri) 17:30:51)
返信ありがとうございます
No9139 (いしだ さん) に返信
> 2007/10/19(Fri) 17:13:16 編集(投稿者)
>
> こんにちは。
>
> DropDownListのDataSourceにデータベースからの値を設定してはどうでしょうか。

それぞれのドロップダウンに別のvalueとitemを指定したいのですが、それでもできるんでしょうか?

> 又は、
>
> GridViewのRowDataBoundイベント等で、
> 1つ1つ設定していくか、ですね。

DropDownListにitemとvalueをそれで設定できますか?
引用返信 編集キー/
■9145 / inTopicNo.5)  Re[4]: GridView使用で・・・
□投稿者/ いしだ (49回)-(2007/10/19(Fri) 17:45:18)
2007/10/19(Fri) 17:45:51 編集(投稿者)
なるほど。行でDropDownListの値が違うわけですね。

GridView1の1列目にDropDownListがあるとして、
1行目 {"item1", "value1"}
2行目 {"item2", "value2"}
を設定する場合は、以下のようにやればどうでしょう。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{

    DropDownList dlist = (DropDownList)e.Row.Cells[0].FindControl("DropDownList1");
    switch (e.Row.RowIndex)
    {
        case 0: // 1行目
            ListItem lItem1 = new ListItem("item1", "value1");
            dlist.Items.Add(lItem1);
            break;
        case 1: // 2行目
            ListItem lItem2 = new ListItem("item2", "value2");
            dlist.Items.Add(lItem2);
            break;
    }
}

引用返信 編集キー/
■9149 / inTopicNo.6)  Re[5]: GridView使用で・・・
□投稿者/ あく (6回)-(2007/10/19(Fri) 18:17:36)
No9145 (いしだ さん) に返信
> 2007/10/19(Fri) 17:45:51 編集(投稿者)
>
> なるほど。行でDropDownListの値が違うわけですね。
>
> GridView1の1列目にDropDownListがあるとして、
> 1行目 {"item1", "value1"}
> 2行目 {"item2", "value2"}
> を設定する場合は、以下のようにやればどうでしょう。
>
> protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
> {
>
> DropDownList dlist = (DropDownList)e.Row.Cells[0].FindControl("DropDownList1");
> switch (e.Row.RowIndex)
> {
> case 0: // 1行目
> ListItem lItem1 = new ListItem("item1", "value1");
> dlist.Items.Add(lItem1);
> break;
> case 1: // 2行目
> ListItem lItem2 = new ListItem("item2", "value2");
> dlist.Items.Add(lItem2);
> break;
> }
> }
ありがとうございます。助かりました。。
頑張ってみます

引用返信 編集キー/
■9259 / inTopicNo.7)  Re[6]: GridView使用で・・・
□投稿者/ あく (14回)-(2007/10/23(Tue) 20:28:31)
すみません追加で質問させてください

プルダウンで選択したデータを受け取る方法はどうやるんですか?
IDがないととれないとおもうので
dQuestAnswer.ID = test.ToString();のものをいれたんですが
値を受け取れてませんでした。

IDを設置しないでも受け取ることは可能なんでしょうか?
お願いします
引用返信 編集キー/
■9377 / inTopicNo.8)  Re[7]: GridView使用で・・・
□投稿者/ いしだ (54回)-(2007/10/25(Thu) 13:21:48)
先のソースで、
DropDownList dlist = (DropDownList)e.Row.Cells[0].FindControl("DropDownList1");
というのがありましたが、このようにやれば該当する行、列のDropDownListが取れます。
そこから選択されている値が取得できるはずです。

例えば、2行8列目のDropDownListから選択されている値を取得するには、
string value = ((DropDownList)GridView1.Rows[1].Cells[7].FindControl("DropDownList1")).SelectedValue;
のような感じでいけるんじゃないでしょうか(動作未確認です)。
引用返信 編集キー/
■9379 / inTopicNo.9)  Re[8]: GridView使用で・・・
□投稿者/ あく (16回)-(2007/10/25(Thu) 13:28:02)
No9377 (いしだ さん) に返信
> 先のソースで、
> DropDownList dlist = (DropDownList)e.Row.Cells[0].FindControl("DropDownList1");
> というのがありましたが、このようにやれば該当する行、列のDropDownListが取れます。
> そこから選択されている値が取得できるはずです。
>
> 例えば、2行8列目のDropDownListから選択されている値を取得するには、
> string value = ((DropDownList)GridView1.Rows[1].Cells[7].FindControl("DropDownList1")).SelectedValue;
> のような感じでいけるんじゃないでしょうか(動作未確認です)。

ありがとうございます。その方法でやっていたんですがずっと出来ませんでした。
IDを設定していたため、余計なことをしていたせいで取れてませんでした。
消したら取れました。
ありがとうございました
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -