dllに準拠したユーザーコントロールのセットがあります。クラス名を使用してコントロールをロードすることができますASP.theusercontrol_ascx blah = new ASP.theusercontrol_ascx();
しかし、動的データがあり、ファイル名 (またはコントロール名) に基づいてコントロールをロードする場合、どのようにそれらをロードできますPage.LoadControl("TheURL/theusercontrol.ascx")
か?
どうもありがとう...
dllに準拠したユーザーコントロールのセットがあります。クラス名を使用してコントロールをロードすることができますASP.theusercontrol_ascx blah = new ASP.theusercontrol_ascx();
しかし、動的データがあり、ファイル名 (またはコントロール名) に基づいてコントロールをロードする場合、どのようにそれらをロードできますPage.LoadControl("TheURL/theusercontrol.ascx")
か?
どうもありがとう...
これを行う適切な方法は実際にはありません。.ascxファイルは、この方法で展開できるようには意図されていません。コードは.dllにコンパイルされていますが、.ascxファイルからの実際のマークアップはコンパイルされていません。.ascxファイルをデプロイ可能なコントロールに変換することに関するMicrosoftの公式ドキュメントに従っている場合でも、マークアップファイルがなくなったという理由だけで、ファイル名に基づいてLoadControlを呼び出すことができなくなります。
リフレクションと.ascxファイルのリソースとしての埋め込みを介してそれを行うことを可能にする多くのハックが浮かんでいます。
それとは別に、本当にを使用するLoadControl(filename)
必要がある場合は、.ascxファイルをコピーする必要があります。