我做个控件,自定一个pic_main 属性 为 picture ,在usercontrol上面放了一个图片框,然后映射pic_main属性到 这个图片框 的picture 属性,设计时给该属性添加个图片,能正确显示,已运行就什么都没有了,况且该属性内容也丢失了,我不知道怎么回事,大家帮帮我。

解决方案 »

  1.   

    '属性变量:
    Dim m_Picture As Picture'End Property
    '注意!不要删除或修改下列被注释的行!
    'MemberInfo=11,0,0,0
    Public Property Get Picture() As Picture
        Set Picture = m_Picture
    End PropertyPublic Property Set Picture(ByVal New_Picture As Picture)
        Set m_Picture = New_Picture
        PropertyChanged "Picture"
    End Property'注意!不要删除或修改下列被注释的行!
    'MappingInfo=Picture1,Picture1,-1,Picture
    Public Property Get pic_main() As Picture
        Set pic_main = Picture1.Picture
    End PropertyPublic Property Set pic_main(ByVal New_pic_main As Picture)
        Set Picture1.Picture = New_pic_main
        PropertyChanged "pic_main"
    End Property'为用户控件初始化属性
    Private Sub UserControl_InitProperties()
        Set m_Picture = LoadPicture("")
    End Sub'从存贮器中加载属性值
    Private Sub UserControl_ReadProperties(PropBag As PropertyBag)    Set m_Picture = PropBag.ReadProperty("Picture", Nothing)
        Set Picture = PropBag.ReadProperty("pic_main", Nothing)
    End Sub'将属性值写到存储器
    Private Sub UserControl_WriteProperties(PropBag As PropertyBag)    Call PropBag.WriteProperty("Picture", m_Picture, Nothing)
        Call PropBag.WriteProperty("pic_main", Picture, Nothing)
    End Sub