扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:朱先忠 来源:51CTO.com 2007年9月2日
关键字:
(二)第二种方法—用户控件+实现IWebPart接口
下面,我们将集中讨论第二种途径—构建UserControl风格的Web Part。我们可以通过创建一个ASP.NET用户控件并实现IWebPart接口来创建一个用户Web Part。列表2展示了一个实现了IWebPart接口的Web Part类的框架。
列表2—以实现IWebPart接口途径创建的用户Web Part典型代码
Class myWebUserControl System.Web.UI.WebControls.WebParts.IWebPart.CatalogIconImageUrl System.Web.UI.WebControls.WebParts.IWebPart.Description System.Web.UI.WebControls.WebParts.IWebPart.Subtitle System.Web.UI.WebControls.WebParts.IWebPart.Title System.Web.UI.WebControls.WebParts.IWebPart.TitleIconImageUrl System.Web.UI.WebControls.WebParts.IWebPart.TitleUrl
Inherits System.Web.UI.UserControl
Implements IWebPart
Private _CatalogIconImageUrl As String = "images/5PointStar.gif"
Public Property CatalogIconImageUrl() As String Implements
Get
Return _CatalogIconImageUrl
End Get
Set(ByVal value As String)
_CatalogIconImageUrl = value
End Set
End Property
'描述
Private _Description As String = "【定制Web Part】"
Public Property Description() As String Implements
Get
Return _Description
End Get
Set(ByVal value As String)
_Description = value
End Set
End Property
'副标题
Private _Subtitle As String = ""
Public ReadOnly Property Subtitle() As String Implements
Get
Return _Subtitle
End Get
End Property
'标题
Private _Title As String = "【我的定制Web Part】"
Public Property Title() As String Implements
Get
Return _Title
End Get
Set(ByVal value As String)
_Title = value
End Set
End Property
' TitleIconImageUrl
Private _TitleIconImageUrl As String = "images/5PointStar.gif"
Public Property TitleIconImageUrl() As String Implements
Get
Return (_TitleIconImageUrl)
End Get
Set(ByVal value As String)
_TitleIconImageUrl = value
End Set
End Property
' TitleUrl
Private _TitleUrl As String = "http://www.example.com"
Public Property TitleUrl() As String Implements
Get
Return _TitleUrl
End Get
Set(ByVal value As String)
_TitleUrl = value
End Set
End Property
End Class
接下来,我们需要在我们的定制用户控件上添加可视化元素。在本示例中,我们将添加三个文本框—它们结合在一起形成我们的定制控件;当然,你也可以使用任何其它ASP.NET控件。
【提示】尽管这是一个Web Part,但是,它本质上还是一个ASP.NET用户控件;所以,你可以在此封装你想实现的任何功能。
现在,对于该控件中的每一个用户接口部件—我们想使终端用户在运行时刻能够配置它们。为此,我们必须在此控件中定义一个布尔指示器,用于根据用户的选择决定是否应该显示该元素。
于是,每一个部件看起来具有如下形式:
|
【注意】这里的属性被标记为“Personalizable”。借助于这个系统提供的属性,在修改该属性时,属性的状态将会被自动地保存。另外,该属性还被标记为“WebBrowsable”;这样以来,我们就可以在一个类似于PropertyGridEditorPart(这个控件与AppearanceEditorPart、BehaviorEditorPart、LayoutEditorPart控件及它们共同的容器控件EditorZone共同构成个性化Web Part页面的“五剑客”)的设计器中修改它。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者