問題タブ [custom-server-controls]
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.
asp.net - 正しい伸ばし方とは?
ASP.net の Panel を拡張するカスタム サーバー コントロール "CollapsablePanel" を作成しようとしています。基本的に、私がやろうとしているのは、現在のパネルを取得し、タイトル バーと必要な JavaScript を追加して、折りたたみ/展開機能を追加することです。それ以外は、.aspx 構文と一般的なパネル機能は同じままにしておきたいです。この状況に何らかのベスト プラクティスはありますか、それとも最終的には、パネルの HTML 出力がどのようにレンダリングされるかを完全に上書きする必要がありますか?
ありがとう、
マイク
asp.net - JavaScript を ASP.net カスタム コントロールに直接埋め込むにはどうすればよいですか?
初めてのユーザー コントロールを構築しています。コントロールに必要な JavaScript をアセンブリにパッケージ化して、エンド ユーザーが依存関係を含めることを心配する必要がないようにしたいと考えています。Scott Mitchell のチュートリアル ( http://aspnet.4guysfromrolla.com/articles/080906-1.aspx ) に従いましたが、正しく動作しないようです。
これが私がこれまでに行ったことです:
次の関数を含む CollapsiblePanel.js ファイルを作成しました。
プロパティ パネルで、ビルド アクションを「埋め込みリソース」に設定しました。このファイルは、クラス ライブラリ プロジェクト内の scripts/ ディレクトリにあります。私のプロジェクトのルート名前空間は webstation.WebControls なので、私の理解が正しければ、「webstation.WebControls.scripts.CollapsiblePanel.js」を介して js ファイルを参照する必要があります。
カスタム コントロールのクラス宣言の直前に次の行を追加しました。
カスタム コントロールの OnPreRender イベントをオーバーライドし、以下を追加しました。
コントロールをレンダリングすると、「TogglePanel(this.id);」という機能を持つボタンがあります。onclickイベントで、ボタンをクリックすると、関数が定義されていないというエラーが表示されます。埋め込まれた JavaScript の使用を開始する方法を誰かが知っている場合は、本当に助けていただければ幸いです。
マイク
asp.net - 現在の Web サイトのサーバー コントロールへの参照を web.config に追加する方法
サーバー コントロール (ユーザー コントロールではない) を拡張し、コードを app_code フォルダーに配置しました。タグプレフィックスをweb configに追加したいのですが、
と
働かないでください。次のエラーが表示されます: エラー 147 不明なサーバー タグ 'cc1:Control'
asp.net - カスタム サーバー コントロール内からページ コントロールにアクセスするにはどうすればよいですか?
モーダル ボックスをカスタム サーバー コントロールとして作成しています。モーダル ボックスの TargetControlID に、クリックしたときにモーダルを表示する要素を指定するプロパティが必要です。モーダル ボックスでプロパティを設定し、コード ビハインドで次のコード ブロックを使用します (いくつかの異なる場所で試しました)。
何が起こるかというと、targetControl は常に NULL になり、属性を追加しようとするとページがクラッシュします。targetControlId のスペルを再確認し、runat="server" であるコントロールを指定しています。サーバー コントロールが、それを含むページ上の他のコントロールにアクセスするための適切な方法は何ですか?
ありがとう、
マイク
c# - カスタム サーバーはアクセス データを制御する必要がありますか、それともクライアントから完全にバインドする必要がありますか?
問題は、一般的なデータ コードをサーバー コントロール内にカプセル化するのと、データをクライアントからコントロールにバインドするのとのどちらがよいかということです。
コントロールはさまざまなアプリケーションで利用され、データは通常、コントロール専用です。問題は、コードを複製してすべてのクライアントでコントロールをバインドするのではなく、コントロールがデータ自体にアクセスできるようにする方がよいでしょうか?
編集: コントロールがデータを直接取得する場合、NHibernate 接続を渡す最善の方法は何でしょうか?
c# - 独自のWebサーバーハイパーリンクコントロールの作成-クラス属性のオーバーライドの問題
基本的なjQueryUIをテーマにしたコントロールとウィジェットの操作を簡単にするために、いくつかのWebサーバーコントロールを作成中です。この段階で行う必要があるのは、ハイパーリンクにCSSクラスを追加することだけです。
以下のコードは私のWebサーバーコントロールです。
これは正常に機能し、追加のCSSクラスでハイパーリンクを生成します。ただし、これも指定すると、 doubleクラス属性CssClass
が作成されます。
次のHTMLを生成します。
ヘルプ!どうすればこれを防ぐことができますか?
c# - サーバー コントロールから動的に ModalPopupExtender コントロールを作成するにはどうすればよいですか?
私は、多くのことを静かにする複合サーバー コントロールを持っています。その 1 つは、動的に生成された HtmlAnchor コントロールの ModalPopup OnClick を表示することです。
この ModalPopupExtender コントロールをサーバー コントロールで動的に作成し、内部からトリガーする必要があります。
私はそれを作成し、設計時に作成されたボタンからトリガーすることができましたが、実行時にはできませんでした。これは、リンクに割り当てられた ID が ModalPopupExtender コントロールによって常に検出されないためです。
静的 ID を割り当てようとしましたが、成功しませんでした。誰でも助けることができますか?
asp.net - 子コントロールを持つasp.net Webサーバーコントロール、イベントが発生しない
LinkButton から継承する子 (Task) を持つことができる単純な Web コントロール (TaskList) があり、宣言的またはプログラム的に追加できます。これは問題なく動作しますが、コード ビハインドでタスクの onclick イベントを発生させることができません。コード ..
マークアップ:
Onclick イベント task1_Click がクリックされても発生しません (ポストバックは発生します)。
.net - JQuery をカスタム サーバー コントロールに埋め込む方法
提案付きの検索ボックスであるサーバー コントロールを作成しています (ユーザーが入力を開始すると、一致する単語が表示されて選択できるようになります)。jquery と C# を使用しています。
テストしているページにjquery Libを含めると、コントロールは正常に機能します。ただし、lib を DLL に埋め込もうとすると機能しません。
私はそれを完全に埋め込んでスクリプトを登録しようとしました:
また、jquery を含むページのヘッダーにタグを追加しようとしています。
コントロールから情報を取得しようとすると、どちらの方法でも JavaScript エラー (Object Expected) が発生します。
誰かがこれを以前にやったことがありますか?出来ますか?誰かがこれに光を当てることができますか?
PS: アセンブリは既に AssemblyInfo.cs ファイルに登録されています。
asp.net - 方法:Updateprogressを含むカスタムUpdatepanelコントロールを作成する
プロジェクトでupdatepanelとupdateprogressを使用しています。updatepanelをページに追加するときはいつでも、updateprogressも追加する必要があります。
次に、updatepanelとupdateprogressの両方を含むカスタムコントロールを作成します。
このようなコントロールがある場合、誰かが私にそのリンクを教えてもらえますか?一方、カスタムコントロールを作成する方法はそれを好みますか?