为什么属性值不能保存?

lgxysl 2003-08-30 01:14:31
为什么属性值不能保存?下面是我在设计控件时的原代码,出错的现象是在设计时改变slwok属性的值不能保存,在控件重新加载后旧的设置值丢失,例如在设计时将slwok的值设为true,重新加载控件后,控件slwok属性的值不能保留为原来的值true,而变为false。请帮我看看错在哪里?怎样才能使属性值得以保存?

Dim slwoks As Boolean '决定列宽是否可拖动

Public Property Get slwok() As Boolean
slwok = slwoks
End Property

Public Property Let slwok(newd As Boolean)
slwoks = newd
PropertyChanged "slwok"
End Property

Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
PropBag.WriteProperty "slwok", slwok, True
End Sub

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
PropBag.ReadProperty "slwok", True
End Sub

...全文
77 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgxysl 2003-09-01
  • 打赏
  • 举报
回复
要保存设计时的值,按msdn的提示,是要用WriteProperty 方法和ReadProperty 方法,我照足示例去做了,但不知为什么不行。
wumy_ld 2003-09-01
  • 打赏
  • 举报
回复
回复人: lgxysl(我心欲静) ( ) 信誉:100 2003-08-31 07:35:00 得分:0


Private Sub UserControl_Initialize()
slwoks=True
End Sub
这肯定是不行的,这样做的话,控件加载时slwoks的值总是true,而不是用户设置的值,我要保存的是用户设置的值。

回复人: lgxysl(我心欲静) ( ) 信誉:100 2003-09-01 14:46:00 得分:0


我现在说的是设计时的属性不能保存!

------------------------------------
楼主究竟是想保存设计时的值,还是运行时的值?
liul17 2003-09-01
  • 打赏
  • 举报
回复
我也遇到过,但还没解决 帮你顶一下!
lgxysl 2003-09-01
  • 打赏
  • 举报
回复
我现在说的是设计时的属性不能保存!
wumy_ld 2003-08-31
  • 打赏
  • 举报
回复
这种情况只能把用户的输入放在文件或数据库里面
wumy_ld 2003-08-31
  • 打赏
  • 举报
回复
运行时设置的属性不能保存,如果想保存,也就是c++里面说的持久化,当然得借助文件了。
lgxysl 2003-08-31
  • 打赏
  • 举报
回复
Private Sub UserControl_Initialize()
slwoks=True
End Sub
这肯定是不行的,这样做的话,控件加载时slwoks的值总是true,而不是用户设置的值,我要保存的是用户设置的值。
lgxysl 2003-08-31
  • 打赏
  • 举报
回复
"这种情况只能把用户的输入放在文件或数据库里面"???
不会吧,textbox,label等控件没有什么数据库的呀。难道自已做的控件要另用数据库来存属性?微软怎么搞的?
chanet 2003-08-31
  • 打赏
  • 举报
回复


使用 ActiveX 向导试试...

wumy_ld 2003-08-30
  • 打赏
  • 举报
回复

Private Sub UserControl_Initialize()
slwoks=True
End Sub
lgxysl 2003-08-30
  • 打赏
  • 举报
回复
有人知道吗?

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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