問題タブ [rendercontrol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
501 参照

asp.net - ASP.NET 設計時にページ コントロール コレクションを取得する

RenderControl メソッドを使用して (UITypeEditor で) デザインタイムに Web.UI.Page から HTML をキャプチャしようとしているときに、サーバー コントロールのみがレンダリングされていることに気付きました。

したがって、次の aspx ページが与えられます。

RenderControl メソッドは、「label1」、「MyControl1」、および「Button1」をレンダリングします。フォーム内の head とすべての div はすべて無視されます。

設計時にページのコントロール ツリーを確認することにしたところ、次のような結果が得られました。

これは実行時にどのように見えるかです:

ここで何が起こっているのですか?

0 投票する
2 に答える
351 参照

asp.net - コントロール マークアップを新しい html ページに保存し、既存の css を添付する

「エクスポート」ボタンがあり、onclick イベントが現在の asp.net ページのコントロールのマークアップを (RenderControl 経由で) 作成し、このマークアップを有効な html 本文にラップして、ユーザーに序数の html ファイルとして提供したいと考えています。

問題は、現在のページで参照されているすべての css (axd リソース、リンク タグ、インライン スタイルが含まれる場合があります) を正確かつ簡単に収集し、このインラインをマークアップに添付する方法です。

0 投票する
1 に答える
4265 参照

asp.net - ASP.NetGridViewHTMLを文字列に変換する

GridViewからHTMLを取得して文字列に保存し、文字列をメールの本文で使用できるようにしようとしています。

これまで、このコーディングをコードビハインドで使用してきました。

アプリケーションの実行中は、次のエラーが表示されます。

そこで、マークアップのこの場所にフォームタグを配置しました。

ここで、次のエラーが発生します。

マークアップの他の場所には他のフォームタグはありません。

これはGridViewのマークアップです。

0 投票する
1 に答える
771 参照

c# - RenderControlを使用するとC#からのJavascript呼び出しが機能しない

私はこの記事をフォローしています。 http://www.codeproject.com/Articles/23768/Load-and-Display-Page-Contents-Asynchronously-with

いくつかのJavaScriptコードを使用したユーザーコントロールがあります。javascriptにalertMe(msg)というメソッドがあるとしましょう。そして私はこれをc#から呼んでいます。呼び出していません。this.page.clientscript.registerscriptblock関数を使用しています。

javascriptでさえページにレンダリングされません。ChromeブラウザでF12キーを押して確認し、コンソールに移動してメソッド名を入力したところ、未定義と表示されました。

  1. renderControlメソッドを使用すると、JavaScriptがページにレンダリングされませんか
  2. ユーザーコントロールを非同期でロードしているときに、c#からjavascriptメソッドを呼び出す方法は何ですか。
0 投票する
1 に答える
2125 参照

c# - バックグラウンド スレッドから呼び出されると System.Web.UI.Control.RenderControl が失敗する

バックグラウンド スレッドでコントロールをレンダリングし、出力をメールで送信する必要があります。したがって、バックグラウンド スレッドで次のコードを実行しています。

asp.net リクエスト スレッドから実行すると、同じコードが完全に正常に動作します。このことをバックグラウンド スレッド自体で動作させることは可能ですか? はいの場合、どのように?

ありがとう、プラダン

0 投票する
0 に答える
4103 参照

c# - C# - RenderControl の問題、「RegisterForEventValidation は Render() 中にのみ呼び出すことができます」

Htmlメールを取得しGridViewて送信する必要があります。

私のGridViewデザインは以下のように言及されています

Htmlサーバー制御を取得するには、以下のコードを使用します

そのようにすることで、私は例外を取得しています

この問題について少しグーグルで調べたところ、結果EnableEventValidation="false"@page directive. しかし、私はこのソリューションを使用できません。

誰かがこれを解決するのを手伝ってくれますか??

0 投票する
1 に答える
1207 参照

javascript - Asp.net レンダー コントロール -> JavaScript エラー

Google チャート API のチャートを含むユーザー コントロールがあります。

ユーザーコントロールがサーバーによってロードおよびレンダリングされると、通常の方法ですべてが期待どおりに機能します。しかし、ajax Webサービスを使用してコントロールを非同期にレンダリングし、ajaxでhtmlを返してページに追加すると、firebugでスクリプトエラーが発生します(chromeはそれをReferenceErrorと呼びます):

「Google が定義されていません」

画像

私のプロジェクトは、JavaScript を使用した ASP.Net MVP Webforms です。
問題を再現したサンプルプロジェクトを作成しました。ここからダウンロードしてください

コントロール レンダラー コード:

(「フォームに必要」というエラーを省略するには、コントロールが追加されたページにフォームがあります)

ユーザーコントロールのスクリプト:

firebug を使用すると、https://www.google.com/jsapiが正常に読み込まれていることがわかりましたが、コンソール ログの最初の 1 つだけが出力されます。

ある種のスコープの問題かもしれないと思います... google 変数はこのスクリプトで定義されます:

ただし、この場合、次のスクリプト ブロックではアクセスできません。通常のレンダリングでは正常に動作します。google.load 呼び出しの前にスクリプトの読み込みが完了していないか、レンダリング方法が異なるために google 変数が何らかの形で別のスコープで定義されています。

firebug DOM を見ると、google 変数はhereのように定義されています。しかし、ブレークポイントを行:google.load('visualization', '1.0', { 'packages': ['corechart'] });に配置すると、現時点では google 変数が DOM で定義されていないことがわかりました。そのため、スクリプトのロードについても考えているかもしれません。しかし、行<script type="text/javascript" src="https://www.google.com/jsapi"></script>はその前にあり、同期して実行する必要がありますよね? firebug でネットをチェックすると、ファイルが正しくダウンロードされていることもわかります。

また、ajax コードをロードするユーザーコントロールが次のようになっていることにも言及する必要があるかもしれません。



問題を再現したサンプルプロジェクトを作成しました。ここからダウンロードしてください

0 投票する
0 に答える
252 参照

asp.net - aspx で静的に宣言されたコントロールをプログラムでレンダリングする

プログラムで aspx ページを文字列にレンダリングしようとしています。レンダリングは、コンソール アプリから実行されます。今のところ、aspx ページでプログラムによって宣言されたコントロールで動作するようになりました。これはすべて問題なくダンディです。しかし、静的に宣言されたコントロールはどうでしょうか? それを達成する方法はありますか?

コード例: ページのレンダリング:

フォームレス ページ クラス

ここで、WebForm1 (参照 Web アプリケーション プロジェクトにありますが、同じプロジェクト内で行われた場合の動作は同じです) でコントロールを宣言すると、正常にレンダリングされます。

...しかし、静的 html および静的に宣言されたコントロールはレンダリングされません。

この動作を完全に偽造し、マークアップのレンダリングも実現する方法はありますか? 上記のレンダリングされた出力は、次のとおりです。

0 投票する
1 に答える
1692 参照

c# - ユーザー コントロール HTML を取得する

ユーザー コントロールの HTML を取得する必要があります。

現時点では、以下のコードを使用しています。

コントロールの仮想パスをハードコーディングする必要がないように、アプローチ1を使用してこれを達成する方法を説明してください。

uc.LoadControl() の他のオーバーロードも試しました

0 投票する
1 に答える
291 参照

c# - C# での htm タグのレンダリング

こんにちは、読んでくれてありがとう。

最近、アプリケーションを .net2 から .net 4.5 にアップグレードしました。トップhtmコントロールを除いて、すべて正常に動作します

アプリケーションを実行すると、次の奇妙なパーサー エラーが発生します。

何度も試した結果、これは既知のバグであり、解決策は Microsoft によるパッチであることがわかりました。ただし、パッチをインストールした後でも問題は解決しません。