2012-02-21 9 views
0

CheckBoxListでマークアップを変更する前に、コントロールアダプターを書きました。
その後、CheckBox用のアダプタを書きましたが、もう一度すべて役に立ちました。
しかし私は、サイトのRadioButtonが私のチェックボックスコントロールアダプタでレンダリングメソッドを使用していることに気付きました。CheckBoxとRadioButtonコントロールアダプター

RadioButtonはCheckBoxから継承されているため、CheckBoxコントロールのアドオンで常に捕捉されます。ラジオボタンのレンダリングをオーバーライドしたくないので、これを止める方法はありますか?それは、CMSを通じて他の多くのコードを変更することを意味します。

また、オブジェクトがラジオボタンの場合は、コントロールアダプターのRenderメソッドをエスケープできますか?
私は最初base.Render()を使うことができると思っていましたが、間違って(WebControl/Controlを継承しています)、明らかに "parent.Render()"が必要です。

アイデア?または、新しいコントロール・アダプターでラジオ・ボタン・レンダリングを強制的に複製する必要がありますか?それは...

<adapter controlType="System.Web.UI.WebControls.DropDownList" adapterType="Skylight.Core.Utility.ControlAdapters.DropDownListAdapter" /> 
<adapter controlType="System.Web.UI.WebControls.Image" adapterType="Skylight.Core.Utility.ControlAdapters.ImageAdapter" /> 
<adapter controlType="System.Web.UI.WebControls.CheckBoxList" adapterType="Skylight.Core.Utility.ControlAdapters.CheckBoxListAdapter" /> 
<adapter controlType="System.Web.UI.WebControls.CheckBox" adapterType="Skylight.Core.Utility.ControlAdapters.CheckBoxAdapter" /> 

おかげで多くのことができます場合は、次のよう

私のブラウザファイルがあります。
ダン

答えて

0

は私が...時間のカップル撮影し、これに自分自身を解決策を見つけましたが、している

あなたはのRadioButtonのための制御アダプタを追加し、上記HideDisabledControlAdapterののadapterTypeを使用している場合チェックボックスアダプタを使用すると、ラジオボタンが正常にレンダリングされます。

<adapter controlType="System.Web.UI.WebControls.RadioButton" adapterType="System.Web.UI.WebControls.Adapters.HideDisabledControlAdapter" />

+0

私は、放射子ボタンが無効になっている場合、それは通常のように表示されません推測... – Chris

関連する問題