|
分類:[.NET 全般]
開発環境、使用言語 WinXp, VB2005
こんばんわ。ユーザーコントロールで苦労しております。
VB6.0での「UserControl_ReadProperties」「UserControl_WriteProperties」と同様の機能をVB2005で実現したいのですが、 実装方法がわかりません。(この機能によりデザイン時のユーザーコントロールの設定を記憶しています) ヘルプ等で調べるとMy.Settingオブジェクトを使用して実現するような事を書いてあるのですが、 いまいちどのように実装すれば良いのか方法がわかりません。
参考までにVB6のコードを以下に載せておきます。よろしくお願いします。 ------------------------------------------------------------------------------------------------ Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
lblCaption.Caption = PropBag.ReadProperty("Caption", "CTX") Call CaptionChange
txtText.Text = PropBag.ReadProperty("Text", "") m_OldText = txtText.Text
UserControl.Enabled = PropBag.ReadProperty("Enabled", True) If UserControl.Enabled Then txtText.BackColor = vbWhite Else txtText.BackColor = vb3DFace End If
m_length = PropBag.ReadProperty("Length", 64) lblNameText.Caption = PropBag.ReadProperty("NameText", "")
txtText.Width = PropBag.ReadProperty("TextWidth", 0) Call WidthSet
Set Font = UserControl.Parent.Font
BackColor = PropBag.ReadProperty("BackColor", vbWhite) CaptionBackColor = PropBag.ReadProperty("CaptionBackColor", vbButtonFace) End Sub
'記憶領域にプロパティ値を書き込みます。 Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
Call PropBag.WriteProperty("Caption", lblCaption.Caption, "CTX") Call PropBag.WriteProperty("Text", txtText.Text, "") Call PropBag.WriteProperty("Enabled", UserControl.Enabled, True) Call PropBag.WriteProperty("Length", m_length, 64) Call PropBag.WriteProperty("NameText", lblNameText.Caption, "") Call PropBag.WriteProperty("TextWidth", txtText.Width, 0) Call PropBag.WriteProperty("BackColor", txtText.BackColor, vbWhite) Call PropBag.WriteProperty("CaptionBackColor", lblCaption.BackColor, vbButtonFace)
End Sub
|