0

こんにちは基本的には、ページのマークアップで宣言されている menuItems にポップアップを追加できるコントロールを作成したいと考えています。構文を次のようにしたいと思います。

<uc1:Sidebar id="" runat="server" enablePopup="True">
<PopUpBindings>
<PopedControlId="" BackgroundClass="" TargetItemIndex=""/>
<PopedControlId="" BackgroundClass="" TargetItemIndex=""/>
..
</PopUpBindings>
</uc1:Sidebar>

asmx ページのメンバー フィールドを使用して enablePopUp を作成できます。以下のように

private bool _enablePopup;
public Boolean EnablePopup
{
    get { return _enablePopup; }
    set { _enablePopup = value; }
}

ただし、markUp 1 のようにバインディング セットを作成します。これまでに行ったことはありません。誰かがこれにヒントを与えることができますか?質問 2: ModalPopup を Repeater の Databinding と共に作成できなかったため、このユーザー コントロールが作成されています。リピーターの ItemDatabound イベントで以下を試しましたが、「ターゲット コントロール Id ={0} が見つかりませんでした」という例外がスローされます

mpcpnlNewBp.TargetControlID = e.Item.ID;//open modalpopup
4

1 に答える 1

1

必要なのは、コントロールのコレクション プロパティです。アイデアを得るには、MSDN のこのサンプル コードを参照してください。

プロパティを編集するための UI など、さらに多くのデザイナー サポートが必要な場合は、コレクション エディターを作成する必要があります。この関連する例を確認してください。

編集: リピーターなどのテンプレート化されたコントロールでは、モーダル ポップアップではできない正しい親コントロール コンテキストでターゲット コントロールを見つける必要があります。解決策は、ページ/ユーザー コントロールでダミー (非表示) コントロールをモーダル ポップアップのターゲット コントロールとして使用し、エクステンダーの Java スクリプト API を使用して、必要に応じてポップアップを非表示/表示することです (クライアント側 APIについては、この記事を参照してください)。 .

于 2011-05-03T08:42:57.057 に答える