我使用VS2008既VB.NET和C#無法訪問
我創建了一個簡單的自定義用戶控件,並增加了一些社會功能,它
我的問題是,用戶控件的公共屬性如果我不把用戶控件從工具箱拖放到一個winform上,而是嘗試通過代碼動態創建一個 - 我無法訪問公共函數和屬性
我不明白爲什麼在那裏會有所不同,但似乎是。
將您是否使用了LoadControl方法加載控制得到任何幫助就此事
感謝
我使用VS2008既VB.NET和C#無法訪問
我創建了一個簡單的自定義用戶控件,並增加了一些社會功能,它
我的問題是,用戶控件的公共屬性如果我不把用戶控件從工具箱拖放到一個winform上,而是嘗試通過代碼動態創建一個 - 我無法訪問公共函數和屬性
我不明白爲什麼在那裏會有所不同,但似乎是。
將您是否使用了LoadControl方法加載控制得到任何幫助就此事
感謝
您正在將您的變量定義爲UserControl
。因此,智能感知只會向您顯示UserControl
課程的成員,即使它實際上是myCustomControl
類型的成員。
更改您的初始聲明爲myCustomControl myUC;
,你應該很好去。
?
即。
MyControl ctrl = (MyControl)LoadControl("~/MyControl.ascx");
我在窗體類例如頂部添加using語句 使用myUserControls 我定義一個變量作爲我的表單類頂部的類型用戶控件,例如 UserControl myUC; 然後在加載事件中,我將其分配給我的自定義用戶控件,如下所示: myUC = new MyUserControls.myCustomControl(); this.controls.add(myUC); myUC.show(); 一切了這一點工作正常 我在表單上看到,但由於某種原因,用戶控制,如果我想訪問公共功能,如: myUC.ShowDetails() 自動完成不顯示我的功能齊全 希望這是有道理的 – Avner 2010-01-31 08:18:27
您neeed鍵入施放到用戶控件的類型 然後它 對於防爆:
public partial class uctls_contact_uctlCompanyViewContacts : System.Web.UI.UserControl
{
public bool ReadOnlyMode
{
get;
set;
}
}
UserControl uctlCompanyViewContacts = (UserControl)Page.LoadControl("uctlCompanyViewContacts.ascx");
uctlCompanyViewContacts.ID = "uctlCompanyViewContacts";
panelCompanyViewContacts.Controls.Add(uctlCompanyViewContacts);
((uctls_contact_uctlCompanyViewContacts)uctlCompanyViewContacts).ReadOnlyMode = true;
工程就像一個魅力 - 非常感謝 – Avner 2010-01-31 09:00:53