私がやろうとしているのは、GridView を継承し、LinqDataSource をプログラムで埋め込むことです。この理由は、列とグリッド プロパティのマークアップ定義を許可するが、効率的なモデル クエリのために sortExpression、ページャー ページ インデックス、およびページャー行カウントを渡す GetDataSourceEvent を実装する汎用グリッド ビューが必要だからです。後者は、DataSourceControl の Selecting イベントをサブスクライブすることによって実行されます。
私が遭遇している問題は、LinqDataSource を UserControl に追加すると、DataSourceId が見つからないことです。OnInit と EnsureChildControls を使用して LinqDataSource を作成しようとしましたが、うまくいきませんでした。グリッドビューを継承してカスタム ページャを作成する方法の例をいくつか見てきましたが、状況に適したイベントが見つからないようです。
プログラムで DataSourceControl を追加し、それに GridView DataSourceId を割り当てる際に、誰かが私を正しい方向に向けることができますか?