ページの ClientID ではなく、コントロールの ClientID を指定していますか (参照した他の SO の質問の例のように)。
そうでない場合は、ページがポストバックしているのに、コントロールで RaisePostBack メソッドを呼び出さない理由が説明されます。
コントロールの ClientID を参照するには、次のように __doPostBack 関数を呼び出します。
__doPostBack("<%= yourControlID.ClientID %>", "an argument");
補足として、コントロールがページ上の唯一のコントロールである場合、コントロールのGetPostBackEventReferenceを呼び出さない限り、ASP.NET によって __doPostBack 関数は作成されません。
必ずしも参照を使用する必要はありませんが、ページがクライアント側関数を生成することを認識できるように、メソッドを呼び出す必要があります。
次のように GetPostBackEventReference を呼び出すことができます。
public class MyTreatment : UserControl, IPostBackEventHandler
{
protected override void OnLoad(EventArgs e)
{
string postBackEventReference = Page.ClientScript.GetPostBackEventReference(this, string.Empty);
base.OnLoad(e);
}
public void RaisePostBackEvent(string eventArgument)
{
}
}
お役に立てれば。