カスタムコントロールlnkprevにリンクボタンが追加されました。今私はデリゲートとイベントを作成しました。私はlnkprevボタンのクリックでそれを呼びたいと思います。カスタムコントロールが呼び出されるページのセクションを閉じるのを防ぐために、私はそうしています。デリゲートとイベントの実装で曖昧さが発生する
public delegate void PagePrevHandler();
public event PagePrevHandler PagePrev;
protected void lnkprev_Click(object sender, EventArgs e)
{
PagePrev();
}
public void PagePrev()
{
List<ListItem> pages = new List<ListItem>();
int pageCount = TotalPages;
int lastnumber = FirstNumber - 10;
int nexttennumber = lastnumber + 10;
if (lastnumber >= 0)
{
if (lastnumber == 0)
{
lastnumber = 1;
nexttennumber = 11;
}
for (int i = lastnumber; i <= pageCount; i++)
{
if (i < nexttennumber && i > 0)
{
pages.Add(new ListItem(i.ToString(), i.ToString(), i != PageIndex));
}
}
FirstNumber = lastnumber;
LastNumber = nexttennumber;
rptPager.DataSource = pages;
rptPager.DataBind();
}
}
ここで問題は、あいまいさの問題を言っているエラーをスローすることです。 "には既に 'PagePrev'の定義が含まれています"
実際に、私は代理人とイベントの概念をオンラインソースから取得していません。私はそれらを実装したことはありません。
私を助けてください!
あなたは何のイベントを使用していますか? lnkprev_Click自体がデリゲート –
'publicイベントPagePrevHandler PagePrev;'を削除するだけで、コードを作業(コンパイル)することができます。 PagePrevイベントが必要なときは、もっと集中的な質問をしてください。 –