C# 来自代码隐藏的用户控制
我们可以在.vb页面中使用“.ascx”吗C# 来自代码隐藏的用户控制,c#,asp.net,vb.net,C#,Asp.net,Vb.net,我们可以在.vb页面中使用“.ascx”吗 如你所知,我们可以使用.ascx,比如“.aspx”。但是我想知道如何从“.vb”使用它?是的-您应该能够将ascx用户控件添加到vb页面- Dim myControl As Control = CType(Page.LoadControl("UC1.ascx"), Control) Panel1.Controls.Add(myControl) 您可以像这样动态加载UserControl: Protected Sub Page_Load(send
如你所知,我们可以使用.ascx,比如“.aspx”。但是我想知道如何从“.vb”使用它?是的-您应该能够将ascx用户控件添加到vb页面-
Dim myControl As Control = CType(Page.LoadControl("UC1.ascx"), Control)
Panel1.Controls.Add(myControl)
您可以像这样动态加载
UserControl
:
Protected Sub Page_Load(sender As Object, evtArgs As EventArgs)
Dim loadedControl = LoadControl("~/path/to/your/ascx/file")
loadedControl.ID = "myLoadedControl"
anyPanel.Controls.Add(loadedControl)
End Sub
.ascx(web控件)通常包含其他web控件(如asp:TextBox等)。您可以从.ascx.vb文件(一个由Visual Studio自动创建的分部类)访问这些文件。如果要将这些控件和/或其属性公开到放置.ascx web控件的.aspx文件中,则需要为它们创建公共属性
例如:如果.ascx有一个名为“txtUserId”的asp:TextBox,并且您希望能够从.aspx页面获取/设置此TextBox的文本属性,则可以添加以下内容:
Public Property UserIdText As String
Get
Return Me.txtUserID.Text
End Get
Set (value As String)
Me.txtUserId.Text = value
End Set
End Property
你想用它做什么?有一个很长的结构,开始和结束大约100行。如果id=101,我将控制id,那么“该代码”将出现在这里。如果没有面板,我们不能使用吗?@ToUpper:UserControl的目的是在aspx页面上(或嵌套在其他控件/UserControls中),因此是的,您应该将其添加到页面或页面上的控件中。但您不必这样做,您可以将其加载到内存中并调用其函数,而无需将其添加到页面的控件集合中。您需要的是jpr101答案的第一行。