在自定义控件中怎样判断设计时还是运行时?

DotNetHappy 2004-10-28 08:13:58
本人在开发自定义控件时,遇到一个问题,就是在构造函数中的代码无论是设计时还是运行时都会执行。而我确希望只在运行时执行。那么,我该怎样判断其设计时还是运行时呢?

先谢谢啦!
...全文
349 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DotNetHappy 2004-10-29
  • 打赏
  • 举报
回复
谢谢君仁!
mingchao123 2004-10-28
  • 打赏
  • 举报
回复
给你个详细的

Imports System.ComponentModel
Imports System.Web.UI

<DefaultProperty("Text"), ToolboxData("<{0}:WebCustomControl1 runat=server></{0}:WebCustomControl1>")> Public Class WebCustomControl1
Inherits System.Web.UI.WebControls.WebControl

Dim _text As String

<Bindable(True), Category("Appearance"), DefaultValue("")> Property [Text]() As String
Get
Return _text
End Get

Set(ByVal Value As String)
_text = Value
End Set
End Property

Protected Overrides Sub Render(ByVal output As System.Web.UI.HtmlTextWriter)

If Site Is Nothing Then
output.Write("不在设计器中")
Else
output.Write("在设计器中")
End If
End Sub

End Class

编译后把他从工具箱中拖到测试页面上就会看到结果
mingchao123 2004-10-28
  • 打赏
  • 举报
回复
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfSystemComponentModelISiteClassDesignModeTopic.htm
.DesignMode 属性 [Visual Basic]请参见
ISite 接口 | ISite 成员 | System.ComponentModel 命名空间 | ISite 成员(Visual J# 语法) | C++ 托管扩展编程
要求
平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET
语言
C#

C++

JScript

Visual Basic

全部显示
确定组件在由类实现时是否处于设计模式。

[Visual Basic]
ReadOnly Property DesignMode As Boolean

[C#]
bool DesignMode {get;}

[C++]
__property bool get_DesignMode();

[JScript]
function get DesignMode() : Boolean;

属性值
如果组件处于设计模式,则为 true;否则为 false。

备注
设计模式指示器存储在 ISite 中;因此,如果 Component 没有与其关联的 ISite,则该属性始终为 false。

kangxidadi 2004-10-28
  • 打赏
  • 举报
回复
o?没有自定义过控件。嘿嘿,我要学。
DotNetHappy 2004-10-28
  • 打赏
  • 举报
回复
当你将自定义控件拖放到某窗体时,就会执行一些代码,如构造函数,Load事件处理程序中的代码等等。
kangxidadi 2004-10-28
  • 打赏
  • 举报
回复
不明白你的意思,设计时还能执行代码啊。我觉得自己好弱啊。
DotNetHappy 2004-10-28
  • 打赏
  • 举报
回复
怎么好像每人回答啊?

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧