メイン ページのコード ビハインドで Treeview コントロールからのカスタム イベントを処理できます。次に、イベント ハンドラーで、gridview コントロールのパブリック メソッドを呼び出します。
control1 がツリー コントロールで、control2 がグリッド コントロールの場合:
メイン ページ aspx (このページのメソッドに control1 イベント ハンドラーを設定):
<%@ Register Src="~/Controls/WebUserControl1.ascx" TagName="Control1" TagPrefix="ctrl" %>
<%@ Register Src="~/Controls/WebUserControl2.ascx" TagName="Control2" TagPrefix="ctrl" %>
<ctrl:Control1 ID="control1" runat="server" OnTreeNodeChanged="Control1_TreeNodeChanged" />
<ctrl:Control2 ID="control2" runat="server" />
メインページのコードビハインド:
public void Control1_TreeNodeChanged(object sender, EventArgs e)
{
control2.ReloadGrid();
}
ツリー制御コード
public event EventHandler TreeNodeChanged;
protected void FromYourTreeNodeEvent(object o, EventArgs e)
{
//fire your custom event
if (TreeNodeChanged!= null)
{
TreeNodeChanged(this, EventArgs.Empty);
}
}
グリッド制御コード
public void ReloadGrid()
{
//do something
}