2009-06-03 6 views
0

xmlドキュメントをビルドして変数に格納する.csファイルがあります。保存されたファイルなしでTreeViewにXmlDataSourceを設定する

私はそれを私の<asp:XmlDataSource>に "注入"したいので、各XMLファイルを保存する必要はありません(毎回違う)。私はどうすればこれについて行くことができますか?私の分離コードCSファイルで

、私が持っている:私のaspxファイルで

XmlDocument x = blahblah

XmlDataSource MySource = new XmlDataSource();

MySource.Data = x.InnerXml

私はformタグを持っている:

<asp:XmlDataSource ID="MySource" runat="server" > </asp:XmlDataSource> <asp:TreeView ID="TreeView1" DataSourceId="MySource" runat="server" />

私はこれを実行したときしかし、私は簡単に取得する:XmlDataSourceのMySource IDが認識されていない場合は、オブジェクトの参照オブジェクト

+0

「これは明らかに動作しません」 - いいえ、明らかに全然...それは仕事や何のエラー、あなたが取得していない理由についての詳細が必要です。 – Cerebrus

答えて

2

のインスタンスに設定されていない、あなたの問題は別の場所に位置しています。通常の状況では、コードビハインドファイルでアクセスできるようにするには、ASPXファイルで宣言するすべてのrunat="server"コントロールを使用します。

ASPXがコードビハインドファイル(@Page宣言)に正しくマップされているかどうかを確認する必要があります。

さらに、入力として文字列を受け入れるので、中間変数を使用せずに文字列XMLをXmlDataSource.Dataプロパティに直接割り当てることができます。

0

XmlDataSourceのDataBind()メソッドの呼び出しが不足している可能性があります。

MySource.DataBind();

関連する問題