DOBON.NETプログラミング道掲示板
(現在 過去ログ1 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
[
親記事をトピックトップへ
]
このトピックに書きこむ
過去ログには書き込み不可
[ トピック内全6記事(1-6 表示) ] <<
0
>>
■33320
/ inTopicNo.1)
Re[5]: 動的コントロールの値によってさらに動的コントロールを画面に表示したい
▼
■
□投稿者/ ゲジゲジナンバー
一般人(4回)-(2016/04/07(Thu) 11:13:34)
もりおさん
返信いただきありがとうございます。
またまた返信が遅くなってしまい申し訳ありません。
やはりそのような感じでSessionを変更しつつ、
InitやLoad時にSessionn状態によって変更するべきなのですね。
もっと簡単に実装できればよかったんですが。。。
毎回返信いただきありがとうございました。
もりおさんにご教授いただいた方法で進めていきます。
解決
済
み!
引用返信
削除キー/
編集
削除
■33319
/ inTopicNo.2)
Re[4]: 動的コントロールの値によってさらに動的コントロールを画面に表示したい
▲
▼
■
□投稿者/ もりお
一般人(3回)-(2016/04/01(Fri) 01:28:32)
■
No33318
に返信(ゲジゲジナンバーさんの記事)
私はサーバ側で操作することを考えていました。
OnSelectIndexChangedでは遅いのですね。
Page_LoadやInitで追加したものについてはイベントが起きますよと。
そうしますと、OnSelectIndexChangedでコントロールを新たに追加しつつ、
追加しましたよというフラグをSessionに保持しつつ、
Page_LoadやInitでフラグをチェックし、コントロールを再作成すれば行けますかね。
引用返信
削除キー/
編集
削除
■33318
/ inTopicNo.3)
Re[3]: 動的コントロールの値によってさらに動的コントロールを画面に表示したい
▲
▼
■
□投稿者/ ゲジゲジナンバー
一般人(3回)-(2016/03/31(Thu) 14:26:22)
もりおさん
返信いただきありがとうございます。
返答が遅くなってしまい申し訳ございません。
OnSelectIndexCangedイベントでテーブルコントロールや
DropDownコントロールを動的に追加し、追加したコントロールの
イベント処理を行ったところ、イベントが実行されませんでした。
他のサイトを調べたところ、初回のページ生成時にコントロールを生成しておかないと
イベントが発生しないとのことです。
もりおさんにアドバイスいただいた内容というのは、
サーバ側ではなくクライアント側のスクリプトでの操作といことでしょうか。
引用返信
削除キー/
編集
削除
■33313
/ inTopicNo.4)
Re[2]: 動的コントロールの値によってさらに動的コントロールを画面に表示したい
▲
▼
■
□投稿者/ もりお
一般人(2回)-(2016/03/27(Sun) 18:01:10)
■
No33312
に返信(ゲジゲジナンバーさんの記事)
OnSelectIndexChangedでテーブルコントロールを操作してしまえばよいのでないでしょうか。
引用返信
削除キー/
編集
削除
■33312
/ inTopicNo.5)
Re[1]: 動的コントロールの値によってさらに動的コントロールを画面に表示したい
▲
▼
■
□投稿者/ ゲジゲジナンバー
一般人(2回)-(2016/03/25(Fri) 18:59:18)
連投すみません。
テストコードのようなものを作成してみました。
AAA→BBB→CCCとDropDownを選択した場合に
→AAA→BBBと1テンポ遅れてしまいます。
【aspx】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication4.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:PlaceHolder ID="ph" runat="server"></asp:PlaceHolder>
</form>
</body>
</html>
【aspx.cs】
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication4
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var ddl = new DropDownList() { AutoPostBack = true };
ddl.Items.Add(new ListItem("AAA", "1"));
ddl.Items.Add(new ListItem("BBB", "2"));
ddl.Items.Add(new ListItem("CCC", "3"));
ddl.Items.Add(new ListItem("DDD", "4"));
ddl.SelectedIndexChanged += new EventHandler(DDLChange);
ph.Controls.Add(ddl);
string ddlValue = (String)Session["ddlValue"];
if (ddlValue != null)
{
var ddl2 = new DropDownList();
switch (ddlValue)
{
case "1":
ddl2.Items.Add("Select:AAA");
break;
case "2":
ddl2.Items.Add("Select:BBB");
break;
case "3":
ddl2.Items.Add("Select:CCC");
break;
case "4":
ddl2.Items.Add("Select:DDD");
break;
}
ph.Controls.Add(ddl2);
}
}
protected void DDLChange(object sender, EventArgs e)
{
var ddl = (DropDownList)sender;
Session.Add("ddlValue", ddl.SelectedValue);
}
}
}
引用返信
削除キー/
編集
削除
■33311
/ inTopicNo.6)
動的コントロールの値によってさらに動的コントロールを画面に表示したい
▲
▼
■
□投稿者/ ゲジゲジナンバー
一般人(1回)-(2016/03/25(Fri) 18:18:11)
環境/言語:[VisualStudio2010Pro C#]
分類:[.NET]
お世話になります。
C#のWebFormでWebアプリを開発中ですが、
壁にぶち当たってしまったため皆様のお知恵をお貸しいただけますでしょうか。
【問題】
画面にあらかじめ配置したPlaceholderコントロールに対して、Init時に
動的にTableコントロールやDropDownListコントロールを追加してします。
この動的に追加したDropDownListで選択した値によって
更に別のテーブルコントロールを制御したいと思っておりますが、
思ったような制御を行うことができません。
動的に追加したDropDownのOnSelectIndexChangedイベントの
メソッド側で選択値をSessionに保持し、Init時にSessionの値に応じたコントロールの追加を行おうとも試みましたが、Init処理後にOnSelectIndexChangedイベントが
動くため、1レスポンス遅れた制御になってしまいます。
何かいい方法はありませんでしょうか。
引用返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-