問題タブ [composite-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.

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

asp.net - 複合コントロール内の子コントロールのビューステートを適切に処理するにはどうすればよいですか?

ListBox 子コントロールを含む複合コントロールがあります。ポストバックすると、ListBox の項目が消えます。ListBox を初期化するプロパティがあり、それを CreateChildControls のコントロール コレクションに追加します。私は何か間違ったことをしていますか?この ListBox のビューステートを適切に処理するために何か他のことをする必要がありますか?

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

asp.net - CompositeControl の CreateChildControls() で子コントロールを作成する必要があるのはなぜですか?

複合コントロールのフローでは、特定の時点で子コントロールを作成する必要があるためです。私は他の人も同様に抱えていたに違いないと思う問題を抱えています。

私のコントロールは、複合「コンテナ/コレクション」コントロールです。オブジェクトが供給され、そのオブジェクト データに基づいて、多数の子コントロールが作成されます。したがって、私のコントロールはヘッダー (常に) と x-number の TextBox コントロールを (供給されたオブジェクトに基づいて) レンダリングします。

私は明らかに CreateChildControls() でヘッダーを作成していますが、(TextBoxes のベースとなる) オブジェクトがまだフィードされているかどうかがわからないため、そこに TextBoxes を作成することはできませんか? オブジェクトを設定/フィードするプロパティ/メソッドを公開することを考えましたが、いつ呼び出されるかわかりません。

それで、私は何をしますか?CreateChildControls() で TextBoxes を作成できない可能性がありますか? つまり、CreateChildControls() がいつ呼び出されるか - 私は、EnsureChildControls() を呼び出すことができることを知っています (これは、ヘッダーの innerText を設定するプロパティで既に行っています - 明らかに innerText を設定する前にヘッダーを作成する必要があるため)。

これはどう

CreateChildControls() に TextBox の構築を配置すると、エラーが発生します (または、せいぜい TextBox を作成しません)。

代わりに、ヘッダーをメンバー変数に格納するだけで、ヘッダーのinnerTextを設定する公開されたメソッド/プロパティでEnsureChildControls()を呼び出す必要がなくなります。私はこのアプローチがあまり好きではありません.一時的に保存するために余分なロジックを追加し、後でそれをいつ設定するか(おそらくPreRenderで)を把握しなければならないため、物事が複雑になるからです.

また、ある種の Databound コントロールを作成して、.DataBind() の呼び出し時にデータが存在するようにすることもできると思います。前回、データバインドされたコントロールの作成を見たとき、非常に複雑になったので、これも本当に好きではありません。

これは本当に簡単に解決できるはずです-どこかで何かが足りないことはわかっています...

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

asp.net - ラベルに AssociatedControlID を設定できない

TextBox と Label コントロールをその Controls コレクションに追加する複合コントロールがあります。Label の AssociatedControlID を Textbox の ClientID に設定しようとすると、このエラーが発生します

わかりましたので、少し背景を説明します。コントロール コレクションに多数の「要素」を動的に追加する、このメイン コンポジット コントロールを取得しました。これらの要素の 1 つがこの 'MatrixTextBox' です。これは、TextBox と Label で構成されるコントロールです。

Label と TextBox を保護されたクラス変数として保持し、CreateChildControls で初期化します。

を設定してみました

Controls コレクションにコントロールを追加した直後と PreRender の両方で、同じエラーが発生します。私は何を間違っていますか?

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

visual-studio - CompositeControl で ScriptManager を使用してスクリプトを追加しますか?

フレンドリーな「ScriptManager」クラスで、古き良き「RegisterClientScriptBlock」を呼び出そうとしています。

私の CompositeControl では機能しませんか? それが機能する通常のユーザーコントロール(ascx)で使用します。

Visual Studio で「ScriptManager」と入力しても受け入れられないか、「現在のコンテキストに「ScriptManager」という名前は存在しません」というメッセージが表示され、コンパイルしようとすると表示されます。何が問題なのか - 私は System.Web.UI への参照を持っていて、それ (および using ステートメント) を追加するのに役立つ resharper さえありました - それがそこにしかなかった場合。

わかりましたので、非常に単純なロジックが今ダウンしています。私は何を知る必要があります...

何か案は?

Visual Studio 2008 with SP1 を入手しました。

編集: 動作しない CompositeControl は、実際には単純なクラス ライブラリであり、ascx ファイルが自然に存在する Web アプリケーションの一部ではありません。何らかの方法でページへの参照を設定する必要があるため、これが問題を引き起こす可能性があることはわかっています-ClientScriptManagerを見てみましたが、コンストラクターは内部であり、ScriptManagerから内部的に使用されていることを示していますクラス ライブラリ (Page オブジェクトへのコンパイル時の参照なし)

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

c# - CompositeControl で OnSelectedIndexChanged イベントを公開する

CompositeControl の一部を構成するコントロールがある場合、消費する aspx ページにイベントDropDownListを公開するにはどうすればよいですか?SelectedIndexChanged

ありがとう

0 投票する
4 に答える
2706 参照

c# - コントロール作成エラー - カスタム コントロール

カスタム コントロールがあり、正常に動作しますが、デザイン タイムにコントロールをレンダリングできません。(私はVS 2008を使用しています)

カスタム コントロールを開発している多くの人がこの問題に遭遇していると思います...エラーは「コントロールの作成エラー - CustomControlName」です オブジェクト参照がオブジェクトのインスタンスに設定されていません。

回避策が必要です。または少なくともこれをデバッグします...(これは設計時の問題なので、デバッグする方法は?)

OnInit、OnPreRender、RenderContents、CreateChildControls メソッドで if( !DesignMode) コードを試しました (暗闇で撮影しているだけです)...

助けてください。これが VS のバグでないことを心から願っています。

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

c# - MaskedEditValidator DisplayMoney が Composite Control に表示されない

AJAX 機能を持つ単純な複合コントロールを作成しています。MaskedEditValidator を実装しようとすると、DisplayMoney プロパティが機能しません。MaskedEdit は、ドル記号を付けずにレンダリングします。何か案は?これが私のコードです:

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

.net - ネストされた項目を含む複合コントロールの構築

私の目標は、RadioButtonList のように見え、そのように機能し、そのように動作する複合コントロールを作成することです。問題なく動作しているいくつかの余分なことが舞台裏で行われています。私が達成できないのは、コントロールを使用するための望ましいマークアップです。私の理想的なマークアップは次のようになります。

私がやりたいことは、<asp:ListItems> を複合コントロールの RadioButtonList に渡し、コントロールを生成/実行するために必要なすべてを処理させることです。

RadioButtonField のコントロール マークアップ:

RadioButtonField の分離コード:

<asp:ListItems> を収集して RadioButtonList に渡すために、RadioButtonField のコード ビハインドは何をする必要がありますか?

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

asp.net - CompositeControl TabIndex プロパティがコンテナー スパンに tabindex を設定しないようにする方法

CompositeControl を継承するカスタム サーバー コントロールを作成しました。コントロールがインスタンス化されると、その Controls コレクションに TextBox が動的に追加されます。TabIndex プロパティをオーバーライドして、設定時に値を子 TextBox コントロールの TabIndex プロパティに適用するようにしました。問題は、CompositeControl がレンダリングされるときに、全体的なコンテナーとしてスパン タグが含まれ、入力 (TextBox) コントロールと同様にスパンに tabindex プロパティを設定していることです。これにより、カーソルが実際にスパンに移動しますが、これは私が望むものではありません。CompositeControl がスパンに tabindex プロパティをレンダリングしないようにする方法についてのアイデアはありますか?

0 投票する
3 に答える
397 参照

model-view-controller - .Net の MVP Taligent プログラミング モデル

次のように、 taligent プログラミング モデル.NETを使用して制御アーキテクチャを作成した人はいますか?

http://www.wildcrest.com/Potel/Portfolio/mvp.pdf

IBMが述べたように -

MVP により、IBM は主要なオブジェクト指向言語環境すべてにわたって統一された概念プログラミング モデルを提供できるようになります。

問題は、IInteractor の概念 (ページ 9) を .NET インターフェイスにどのように実装またはマップするかです。現在のところ、IInputElementインターフェイスをすべての UI 入力コントロールのイベント ソースとして使用することをお勧めします。

だれかが .NET で既にタリジェント パターンを実装している場合、それが Silverlight と WPF の両方に適用されるかどうかを知りたいです。もしそうなら、それはそれらのインターフェースの結合に適用されますか?

最後に、これは統一された抽象アーキテクチャを表し、置き換えることができPresentationFramework.dllます。これが制御アーキテクチャとして当てはまる場合は、コメントしてください。