我決定學習如何創建服務器控件,因爲我在用戶控件時遇到了問題。我希望能夠爲我的用戶控件創建JavaScript函數,所以我可以調用userControl1.clientSideFunction();你實際上不能用用戶控件來做這件事,因爲這個函數只會作爲clientSideFunction()被放入頁面。而實際上並沒有附加到用戶控件上。有一些方法可以通過用戶控制來實現,但它並不是爲了支持它而設計的。根據我的理解,服務器控件旨在允許這樣做。我找不到關於它的很多信息,有誰知道如何做到這一點?這是我的控制的基本輪廓。服務器控件中JavaScript函數的範圍
namespace ServerControl1
{
public class Class1 : CompositeControl
{
private DevExpress.Web.ASPxEditors.ASPxButton btnTest;
private DevExpress.Web.ASPxPopupControl.ASPxPopupControl popupTest;
protected override void Render(HtmlTextWriter writer)
{
writer.Write("<h1>This is my control</h1>");
}
protected override void CreateChildControls()
{
btnTest = new DevExpress.Web.ASPxEditors.ASPxButton();
btnTest.Text = "wazzzup";
popupTest = new DevExpress.Web.ASPxPopupControl.ASPxPopupControl();
popupTest.Width = Unit.Pixel(500);
popupTest.Height = Unit.Pixel(500);
popupTest.Controls.Add(btnTest);
popupTest.ShowOnPageLoad = true;
Controls.Add(popupTest);
}
}
}
雖然這可能在理論上回答這個問題,但[這將是更可取的](http://meta.stackexchange.com/q/8259)在這裏包含答案的基本部分,並提供供參考的鏈接。 – Matt 2012-07-17 15:04:04