2009-03-23 21 views

答えて

1

私は、それ自体、それはテンプレートでこれを行うには理にかなっているかわかりません。テンプレートはITemplate型のプロパティです。私はあなたのデザイナーコードがテンプレートに入るものを制限しようとするかもしれないと思うが、それは本当にパラダイムに反している。

おそらくあなたが望むのは、Control.AddParsedSubObjectメソッドをオーバーライドするか、ControlBuilderを実装してそれを真剣に考えることです。

+0

人々は面白いことをする。 – Ruslan

+0

人は興味深いことがありますが、テンプレートの内容を制限したい場合は、テンプレートメカニズムを内部的に使用し、テンプレートプロパティではないものに任意のコントロールを入れようとするユーザーに不満を持たせないことをお勧めします。 –

1

ジョン、 ありがとうございました!それは私をさらに助けてくれるでしょう。 それはしかし意味がない、なぜ私は、かなりわからないんだけど...例えばデータグリッドの列プロパティの内側にのみ、特定の子、コントロールが許可されています。

連結列 ButtonColumn EditCommandColumn HyperLinkColumn

どれでも他のコントロールが挿入されると、コンパイルエラーが発生します。エラー4検証(ASP.Net):要素の列の開始タグと終了タグの間にテキストは使用できません。

/Asger私は1つが、その後、それが理にかなっている場合、と言う、唯一の特定の会社によって作られたものは...私はわからないんだけど、テンプレート内のコントロールの種類を制限したいのですが、可能性が想定

+0

これらはテンプレート領域内のコントロールではなく、コントロールビルダが処理する方法を知っていて、コントロールの処理方法を知っているカスタムタグです。独自のコントロールビルダを作成し、AddParsedSubObject(http://msdn.microsoft.com/en-us/library/system.web.ui.controlbuilder.aspx)をオーバーライドします。 – Ruslan

関連する問題