2011-07-29 11 views
0

私からの別のnoob質問...謝罪!ImageクラスのインスタンスをプログラムでImageコントロールに割り当てるにはどうすればよいですか?

(これは簡略化されている)は、次のように私の最初のコードは次のようになります。

Image pic = new Image(); 

pic.ImageUrl = "~/Images/photo.jpg"; 
pic.BorderColor = "Black"; 

がどのように私は私のASP.NETページにすでにイメージコントロールに「PIC」Imageオブジェクトを割り当てることができますか?

次は動作しますが、私は何をしようとしている示していません:

MyImageControl = pic; 

私はより簡単に解決策がなければならないと確信している:あなたがしたい場合は

MyImageControl.ImageUrl = pic.ImageUrl; 
MyImageControl.BorderColor = pic.BorderColor; 
+0

なぜ新しいコントロールを作成していますか? – SLaks

+0

画像パスをコントロールに割り当てるだけでどうなるでしょうか? – V4Vendetta

+0

上記の例は私が達成しようとしているものの単純化されたバージョンです。 'pic'オブジェクトは、実際にはDictionaryオブジェクトから返されるImageオブジェクトです。次に、このImage(または、もっと具体的には、このImageのプロパティ)を、すべてのプロパティに対して明示的に行う必要なく、.aspxページに既に存在するImage Controlに割り当てたいとします。 – triplestones

答えて

0

SOLUTION

私は私のために動作しますが、私は上記求めてきました何をすべきかの方法があるかどうかはまだ興味がある何かが出ている - 私のソリューションは私の.aspxページに空のImage Controlを置くのではなく、代わりにPlaceHolderのために変更しました。次に、C#コードで、次のコードを使用してページに画像を含めることができます。

MyPlaceHolder.Controls.Add(pic); 
2

あなたはそれを行う必要があるページにコントロールを動的に配置します。コンテナを持って、コンテナに追加します。コントロールを格納しているリストや配列がある場合は、コレクションを反復し、必要なプロパティを設定してcontainer.controls.add(control)を呼び出します。彼らの状態が保持されないので、あなたはポストバックごとにこれを行う必要があります。

コントロールを表示する場所としてコンテナを使用するのが、コントロールのスタイルと配置の最も簡単な方法です。 (オリジナルのポストから移動)

関連する問題