問題タブ [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 - CompareValidator は listview の editItemTemplate では機能しますが、insertitemtemplate では機能しません
検証に問題があります
私はリストビューを持っています。編集項目テンプレートには、内部にテキストボックスを持つ2つの複合コントロールがあります
私はそれにcomparevalidatorを置きます
それはうまくいきます!
したがって、InserItemTemplate でまったく同じ操作を行います (コピー/貼り付けです)。
しかし、今回は機能しません。validationsummary にエラー メッセージがなく、検証するコントロールの近くにありません。
あなたがその問題を知っているなら、私を助けてください
前もって感謝します
visual-studio-2008 - ASP.NET サーバー コントロール - Web 参照で型/オブジェクトを再利用する
ASP.NET サーバー コントロールの Web 参照でオブジェクトを再利用できるかどうか疑問に思っていました。(基本的に同じ Web 参照名を維持します)
同じ Web 参照名でグループ化したい Web サービス (.asmx) がいくつかありますが、同じ名前を使用してそれらを使用すると、最後とすべてのオブジェクト名に 1 が追加されます。
右クリック - Web 参照の追加 asmx の URL を入力 Web 参照名に「MyServices」と入力
同じオブジェクトをグループ化して再利用するのではなく、「MyServices1」として追加します。
これは、ASP.NET サーバー コントロールでのみこれを行うように見えます。これまでに作成した他のプロジェクト、標準の c# コンソール アプリケーション、asp.net Web アプリケーションはすべて、オブジェクトと Web 参照名をグループ化します。
パッチやアップグレードが不足していますか、それとも Server Control では不可能なのでしょうか?
ちょっとした背景として、単一の dll に基づいてプロジェクトにドロップできるコントロールを作成しています。
テスト プロジェクトが Web アプリケーションの場合、サービスをグループ化できますが、サーバー コントロール プロジェクトではグループ化されません。
どんな助けでも大歓迎です!
ありがとう!
ジェイミー
例は次の場所にあります。
asp.net - コントロールと Web コントロールからの継承
カスタム コントロールを作成するときに Web コントロールとコントロールのどちらを選択するかについての説明を読んだことがありますが、それだけでは十分ではありません。カスタム コントロールが両方とも UI に何かをレンダリングしているときに、どちらかから継承するのを見てきました。
http://msdn.microsoft.com/en-us/library/yhzc935f.aspx
「コントロールがクライアント上でユーザー インターフェイス (UI) 要素またはその他の可視要素をレンダリングする場合、System.Web.UI.WebControls..::.WebControl (または派生クラス) からコントロールを派生させる必要があります。 renders an element that is not visible in the browser, such as a hidden element or a meta element, raise your control from System.Web.UI..::.Control. WebControl クラスは Control から派生し、次のようなスタイル関連のプロパティを追加しますFont、ForeColor、および BackColor として。さらに、WebControl から派生したコントロールは、追加作業なしで ASP.NET のテーマ機能に参加します。」
WebControl を使用する唯一の理由は、スタイリング機能を使用する場合ですか? 究極的にはstringbuilderで文字列を出力するだけなので、そのことは気にしません。とにかく、コントロールがレンダリングする HTML を形成するために、テーブルのないデザインと文字列をそのまま使用したいと思います。
c# - Web サービスの呼び出し時にカスタム Web サーバー コントロールが失敗する
Web サーバー コントロールを作成しました。正常に動作します。外部 Web サービスを呼び出そうとすると問題が発生します。私はスクリプト マネージャーを使用しており、次の場所に向けられています --> http:\localhost\UserNamesData.asmx。
私のサーバー コントロールは、いくつかの HTML コントロールといくつかの JavaScript コードを作成します。ユーザーが送信ボタンをクリックすると、JavaScript が外部 Web サービスを呼び出します。スクリプト マネージャーを使用してサービス参照を登録しています。
サーバーコントロールが後で登録されるプロジェクト内にWebサービスを配置すると(私のWebサイトでの意味)、インラインスクリプトがtrueに設定されると、これは機能するようです。私のWebサービスが私のWebサイトと同じプロジェクトにない場合は機能しませんが。
aspnet と c# 3.5 を使用しています
何がこのように動作するのか、私にはわかりません。何かご意見は?
c# - ASP.NETStateBagとカスタムコントロール
なんらかの理由で、WebControlではなくControlから派生したカスタムコントロールを作成したいとします。また、属性を処理する(つまり、IAttributeAccessorを実装する)必要があり、WebControlと同じようにAttributeCollectionを使用して処理したいとします。
WebControlは、次のようにAttributesプロパティを実装します。
次の点に注意してください。
- StateBagを指定せずにAttributeCollectionを作成することはできません。
- 新しいStateBagを作成する必要があります。属性がコントロールによって格納された値として名前を持っている可能性があるため、コントロールのStateBagを再利用することは賢明ではありません。
- これは内部メソッドであるため、StateBagでTrackViewStateを呼び出すことはできません。
- StateBagは封印されたクラスです。
したがって、AttributeCollectionを使用する場合は、(リフレクションなどのトリックを使用せずに)実際に状態を正しく管理できない新しいStateBagを使用する必要があることを理解しています。
私は何かが足りないのですか?
asp.net - ASP.NET テンプレート コントロール
テンプレート化されたコントロールを構築しようとしています。Field セクションの一部として、コントロールを子として定義できるようにしたいと考えています。コンパイルしようとすると、「MyTemplateControl.Field' には 'Button' という名前のパブリック プロパティがありません」というエラー メッセージが表示されます。私がやろうとしていることを達成する方法を知っている人はいますか?
以下に XHTML マークアップの例を示し、その下に私のコントロールの実装を示します。
探しているものを明確にするために、例を編集しました。MSDN リンクをありがとうございます。私はすでにそれらを経験してきました。
私が構築しようとしているのは、テーブルを自動フォーマットするデータ入力コントロールです。私たちは多くのデータ入力 Web フォームを行っており、実装時間を短縮したいと考えています。
c# - カスタムサーバーコントロールでMemberwiseClone()を呼び出しても安全ですか?
(擬似コード)のようなカスタムサーバーコントロールを作成しました
このカスタムサーバーコントロールをコピーする必要がある場合があります。基本的には、プログラマーがaspxまたはascxコードに宣言的に追加します。実行時に、このコントロールの複数のインスタンスを作成する必要があります。これらのインスタンスは、親コントロールに追加されます。ただし、これはその親コントロールのコンテキストで処理されます。
とにかく、使用のコンテキストを説明するのは少し難しいです。しかし、私の主な質問は、「クローン作成」を使用するのが安全かどうか、特にMemberwiseClone()
Webコントロールを呼び出すのに安全かどうかです。これまでに行ったことは、次のようなメソッドを追加することです
つまり、ASP.netコントロール階層は非常に複雑なモデルです。ですから、そのようなソリューションで発生する可能性のある欠点を知っている人がいるかどうかを聞きたかったのです。
asp.net - フォームと scriptmanager を使用したカスタム サーバー コントロール
私は一連のasp.netサーバーコントロールを構築していますが、そのうちの1つである本質的にコンテナコントロールに、フォームコントロール、スクリプトマネージャー、および更新パネルを追加したいと考えています。これは可能ですか、またはページ/コントロールのライフ サイクルの理由から、Web プロジェクト用に持っているページ基本クラスでこれらを作成する必要がありますか?
マスターページは使用していません。
よろしく、 アンドリュー
asp.net - 単一のテンプレート サーバー コントロール
FormView コントロールのように "ItemTemplate" を必要とせずに、単一のテンプレート (ユーザーが任意のテキストを入力できることを意味します) を持つカスタム サーバー コントロールを持つことは可能ですか?
ソースビューのコントロールを次のように表示したい
ユーザーは、必要な HTML コンテンツをここに配置します
これの代わりに
ユーザーは、必要な HTML コンテンツをここに配置します
私のカスタム サーバー コントロールは、2 つの asp.net パネル コントロールと ajax collapsiblepanel コントロールを追加する必要があります。1 つのパネルは展開/折りたたみパネルになり、もう 1 つのパネルはユーザー テキストを入れて、折りたたみ可能なパネルを折りたたんでパネルを非表示にするものです。
複合サーバー コントロールを作成し、ITemplate を使用してこれを行う方法は知っていますが (少なくとも私は知っていると思います) <ItemTemplate
、ソース ビューに子 > タグが必要です。
何か案は?
asp.net - カスタム サーバー コントロールを ASP.NET に認識させるにはどうすればよいですか?
パネルから派生した最初の ASP.net サーバー コントロールを作成しようとしています。何らかの理由で、アプリケーションがコントロールのクラスと名前空間を認識しているにもかかわらず、.aspx ページにサーバー タグを認識させることができません。
私が使用した手順は次のとおりです。
1) 私は自分の site_code ディレクトリに配置したクラス CollapsablePanel を作成しました。Web サイトではなく Web アプリを使用しているため、App_Code は実際には利用できません。
2) .aspx ファイルに <%@ Register TagPrefix="webstation" Namespace="MyApplication.webstation.WebControls" %> を追加しました
プロジェクトをビルドしましたが、カスタム タグのプレフィックスが表示されません。先に進んで入力すると、エディターはエラーをスローしませんが、ページを公開してアクセスしようとするとエラーが発生します。分離コード (Imports MyApplication.webstation.WebControls) からクラスにアクセスしようとすると、カスタム コントロールがインテリセンスで表示されるので、Visual Studio がクラス情報をある程度読み取っていることがわかります。
ここで何が間違っていますか?どんな考えでも大歓迎です。
マイク