1

私は TreeView に取り組んでおり、renderControl() メソッドを実行する必要があります。起動すると、例外が発生します: InvalidOperationException: Page cannot be null. この操作が ASP.NET 要求のコンテキストで実行されていることを確認してください。

エラーがどこにあるのかをコメントするとき、私は次のコードを持っています:

try{
   StringWriter writer = new StringWriter();
   HtmlTextWriter tOut = new HtmlTextWriter(writer);
   ddFieldFilter.RenderControl(tOut);  //This doesnt error.
   tvFields = new RadTreeView();
   tvFields.NodeExpand += new RadTreeViewEventHandler(tvFields_NodeExpand);
   tvFields.NodeClick += new RadTreeViewEventHandler(tvFields_NodeClick);
   startTree();
   tvFields.RenderControl(tOut);  //Errors here.
   String context = writer.toString();
}catch(Exception e){
   throw new Exception("Error Loading Page: " + e.Message);
}

現在ライターにコンテンツがあるためではないでしょうか?文字列にクリアまたはフラッシュしてから再構築することを考えていました。現在のバッファに追加されるかどうかはわかりませんでした

追加情報が必要な場合はお知らせください

4

1 に答える 1

1

あなたがやろうとしていることは、現在サポートされているようには見えません。この質問は Asp.NETColorPickerコントロールに関するものですが、コントロールにも当てはまると思いますRadTreeView

Telerik サポート センター経由:

Q: ページなしで ColorPicker をレンダリングする方法はありますか? aspx.csではなく、aspxに直接書き込む状況で追加する必要がありました。また、ジェネリック ハンドラー ashx から実行する必要がある場合もあります。これは可能ですか?

A: コントロールは、マークアップまたはコード ビハインドでページに追加する必要があります。RenderControl メソッドを試して Response.OutputStream に書き込むこともできますが、これはサポートされているシナリオではなく、成功を保証できないため、このような試みはお勧めしません。

よろしく、 テレリックチームの
マリン

于 2012-07-12T17:54:01.610 に答える