C#中hide()方法visible=false 有什么区别呀,是不是完全相同呀!

 我来答
西三227
2010-05-19 · TA获得超过1168个赞
知道小有建树答主
回答量:473
采纳率:0%
帮助的人:339万
展开全部
本质上讲没有区别。这只是C#设计的一个普遍做法,就是某些功能既可以用属性来实现,也可以用方法来实现,实际上你设置属性它内部也是调用对应的方法。比如:数组的长度既可以用 array.length 来表示,也可以用 GetLength(array)。一个是用方法,一个是用属性,在于你的爱好而已,内部机理是一致的。
小狗核桃
2010-05-19 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:127
采纳率:0%
帮助的人:105万
展开全部
hide()可以用show()重新生成打开,会被内存换去;visible用true重现,一直在内存中的。hide()更省资源,其占用的内存可以被其它程序再用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1028630307
2010-05-19
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
hide()可以用show()重新生成打开,会被内存换去;visible用true重现,一直在内存中的。hide()更省资源,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiehaiyimo
2010-05-19 · TA获得超过270个赞
知道小有建树答主
回答量:278
采纳率:100%
帮助的人:258万
展开全部
嗯,节省资源可以用hide()方法,主要的不同是:
在需要显示的时候使用的方法不同:hide()方法需要用show()方法显示,
设置visible=false;则需要写:visible=true;(此时资源在内存中)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
149032105
2010-05-19 · TA获得超过756个赞
知道小有建树答主
回答量:1029
采纳率:0%
帮助的人:660万
展开全部
我发现某些人还真是能说.....

public void Hide() {
Visible = false;
}

这里是.net 的源码的Hide的实现.所以说 hide() 和vieible=false是没有分别的

vieible的源码如下
public bool Visible {
get {
return GetVisibleCore();
}
set {
SetVisibleCore(value);
}
}
SetVisibleCore的代码片段
protected virtual void SetVisibleCore(bool value) {
try {
System.Internal.HandleCollector.SuspendCollect();

if (GetVisibleCore() != value) {
if (!value) {
SelectNextIfFocused();
}

bool fireChange = false;

if (GetTopLevel()) {
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式