我使用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